Basic customizable controls

players can set controls by:
game.playerControls = game.controlLayouts.dvorak; //or .azerty, or .qwerty.

game logic can store multiple modal or default layouts in controlLayouts, and switch between them (i.e., a mode for vehicles and for walking).

the control layout format is a dictionary of keycode: command tuples.