OGM-175 Batch operations for MongoDB

https://hibernate.atlassian.net/browse/OGM-175

This patch is similar to the one sent by @gscheibel.

In the end I have decided to keep only the ```BatchableGridDIalect``` interface to identify the dialect that can execute batch operations.

In MongoDB I've implemented it only for CRUD operations on entities but not on associations, this should not be too hard to implement but I would like to have some feedback before going on on this patch.

I'm still using ThreadLocal to keep the queue, I will open a new JIRA to remove it.