Updated the event module. Next target: the resource module. Coming soon... XD

1. Changed the event architecture. Events now become a container for the event type and the event data instead of an event itself is the data.
2. Removed the IEvent interface which makes no sense.
3. Renamed BaseEvent to Event since there is no IEvent interface.
4. Renamed Event::getType to Event::getEventType making it more understandable.