Separated game.update function and game.draw function

The intention behind this change is to keep the game updating at a
constant ~70 cycles per second while allowing requestAnimationFrame to
schedule drawing the frames at whatever speed the computer can handle.

This should fix the slow game problem with less powerful machines.
Fingers crossed.