Support Doctrine ODM as well as Doctrine ORM

This PR allows for any kind of database to be used. The approach used is the same as FOSUserBundle's: a base model is provided (`Model` namespace) and then extended (`Entity` namespace for doctrine ORM and `Document` for ODM).

**N.B**: there is a BC break as the `Model` namespace is now really used to store the model (and is hence "ORM annotations"-free). We could avoid this BC break by moving the real model into another namespace (what would be its name?) but I tried to be consistent while naming things. WDYT?