Software design patterns used


 * Singleton: GameController
 * Observer: -placeholder-