Event refactoring to use doctrine commons 2.4 events where possible

superseeds #248