Add double-buffering to get rid of some flicker.

Might like to change strategy in the future, lots of object
allocations every frame.
Act differently for different arrow keys
Refactor long form into function
30FPS Drawing
Factor out extra nested let
Get rid of debounce, just trust that keys don't auto-repeat