Items can now be added to a specific position.

When going to add a node, the new node is added after the currently
selected node. In the event of adding to a parent node that accepts the
newNode as a child, the newNode will be added in the last position.

Dragging and dropping mimics adding a newNode so this functionality
remains intact.