[Hydrator] Create new instance of target entity when array without identifiers is given

* DoctrineObject now get metadata for all target classes including associations (necessary for new toMany() feature)
* Method toMany() now create new instance of target entity when array without identifiers is given
* Method toMany() now filtering criteria for calling find() method when identifiers is given (only identifiers is necessary - any others fields can break attempt to find existing entity in DB)
* Method toMany() now don't call hydrateValue() if collection is empty
* Refactoring DoctrineObject tests (can set many class metadata, new getters for hydrators, new getter for objectManager)
* Add 2 tests to verify new toMany() behaviour