Working on game modes, refactoring different interfaces