Simplify entities
Fix bug where update returns 0
Refactored the event layer to always trigger during a save(), not just through the repository methods
Refactored the way events are used and their arguments
Renamed preCallback to before and postCallback to after
Added preCreate, preUpdate, postCreate and postUpdate events
Increased code coverage