OGM-548 Remove redundant properties from relationships in Neo4j

https://hibernate.atlassian.net/browse/OGM-548

This pull requests will remove the TEMP nodes, the redundant properties on the relationship for associations and collection of embedded.

I had to add some values on the AssociationKey and the AssociationContext to achieve this.

Note that it won't affect the additional properties on OneToOne and it won't create a separtate node for an embedded attribute (There are separate issuesfor this).
Why don't you use `Set#contains()`?