After making few diagrams(by just dropping elements from a toolbox on diagrams and making a lot of copies of the same thing in different diagrams) I realized that what I see inside diagrams and elements on the left side in the project tree aren't the same thing and I can reuse elements I see on the left side in different diagrams with Links, instances and child:

As I understand, by default when you drop an element from a toolbox on a diagram, it creates new element based on a template, puts it in a project tree and then inserts a link to that element into the diagram, right?
With the "default" approach I create a lot of copies of the same thing and I can't even refactor it, like if I have a class in many diagrams, I can't just change it in once place, so it would change in all places, I'd have to go and change it in every diagram.
So I'm trying to understand how to organize a project to be able to reuse elements. Here's what I came up so far:

Basically, I just organize stuff by what type it is. User is an actor, so it goes into actors package, actor is an element, so it goes into elements package, same with other objects in the project. Is it any good? Can you suggest something? Is there an article about how to properly organize elements in the project browser?
How do people who actually model software systems organize their models of solutions in EA? Are there any examples(projects, so I can open it in EA), so I can follow good practices?