Implemented an event handler class to process events

EventHandler can process events
Modified some reference access modifiers for use with eventhandler