Use the parent id as the location for a model.
This greatly reduces the recursive work that must be done
during move operations to keep the location accurate.
Additionally, the locationService now implements a method
`persistLocation` which can be used to persist the current object
location as it's original location.
The entanglement bundle defines move, copy, and link actions, and
exposes them as context menu actions.
* The Move action moves an object from it's current parent to a new
parent object.
* The Copy action deep-copies an object to a new parent object.
* The Link action links an object to a new parent object.
These actions are implemented by three new services: moveService,
copyService, and linkService.
Mocks are provided for each service for easy testing of components
that depend on them.
Additionally, this bundle provides a DomainObjectFactory that simplifies
the construction of mockDomainObjects for tests.
These actions are exposed to the user as context menu options.