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.
Not sure whether it needs a new facet for this. Couldn't it simply be done via the constructor of the dialect class? Alternatively, there is the `Startable` service facet which may be used as well.