Updated the game events broadcaster to be more flexible with events

* Removed the ugly switch statement
* Handlers are now managed in a dictionary
* Added the first tests (stub)