OGM-522 Cache Neo4j CRUD queries

https://hibernate.atlassian.net/browse/OGM-522

Queries get created during the schema definition and injected in the dialect using a map.

The dialect can get the queries using EntityKeyMetadata or AssociationKeyMetadata as keys.
I'm wondering why this is triggered by the schema initializer. Couldn't it be done within the dialect itself during construction? The schema initializer really should only create/update persistent structures in the datastore. This would also avoid the need for that `injectQueries()` method.