Implemented the ReservationEventBus and loads of unit tests for it (belongs to #242)