Add some javadoc around DetachedVertex/Edge
Refactor Detached classes to force more consistency in the attach method.

Introduce Attachable interface and implement that on Element and Property.