Introduce multiple adapters system

For now: 
* DoctrineORM 
* Elastica
->cannotBeEmpty()