add base events class

Hi,

All doctrine projects implements events. A lot of them are similars, but there is no base class defining common Events.

I tried to gathen them all in this PR. I looked into ```CouchDb-orm```, ```doctrine-orm```, ```doctrine-mongodb-odm``` and ```phpcr-odm```. 

I only added events present in all packages, but CouchDB is the only one to not implement some events implemented in every other packages (```postPersist```, ```loadClassmetadata```, ```preFlush```, etc.).
@deeky666 the ORM class would simply keeps its own non-PSR constant name for BC, marking it as deprecated. In Doctrine Common, we would only have the PSR name (there is no BC issue at the level of Doctrine Common as the class is new)

@jdeniau no, constants are part of the public API of Doctrine. They are used by subscribers. We cannot remove them.