Refactored out a date check for readability
Added additional callbacks

 - Renamed onInitialiseList to onBeforeInitialiseList
 - Renamed onAddedToList to onEventAddedToList
 - Added onAfterInitialiseList
 - Added onBeforeAddingEvent