Handle keycodes which are actually scancodes.
Route SDL input events directly to controller.

Deferring the events was causing quite a bit of weird input lag.  This
makes much more sense.

Also fixed the key pressed/released events being reversed.