OGM-469, OGM-625: Reading embedded collections/associations with the embedding document in MongoDB

(based on top of PR ..., see [here](https://github.com/gunnarmorling/hibernate-ogm/compare/gunnarmorling:OGM-615...gunnarmorling:OGM-469?expand=1) for the diff of this PR only)

This uses the new entity extra state to expose the `Tuple` of the embedding entity to association operations on `GridDialect`. Dialects can use this to access the association from the tuple snapshot of that entity. `TupleContext#getSelectableColumns()` also returns the names of the embedded associations now for that purpose (allowing dialects to load all the data using the right projection).

I still need to polish some details, but let me know what you think. Thanks!