OGM-592 Misc. improvements

* Improving method names
* Improving toString() method
* Protecting against null parameter
OGM-592 Using manual assigned ids for some test entities for the sake of simpler debugging
OGM-592 Moving "collectionRole" from AssociationKey to AssociationKeyMetadata

* Establishing BiDirectionalAssociationHelper for consolidating logic dealing with bi-di associations
* Always obtaining AssociationKeyMetadata from persisters instead of re-creating it
OGM-592 Moving "associationKind" from AssociationKey to AssociationKeyMetadata
OGM-592 Removing obsolete logic from AssociationPersister
OGM-592 Always exposing main side role via AssociationContext
OGM-592 Addressing review remarks

* using postInstantiate() instead of lazy determination of inverse meta-data
* Also adding test for BiDirectionalAssociationHelper
* Consolidating more logic in BiDirectionalAssociationHelper
OGM-592 Fixing mistake in log message, improving toString() method, method name and JavaDocs
OGM-592 Adding test for shared primary key