Crazy stuff that doesn't make sense.
Kind of ridiculous smoothish movement implementation.
Consolidate velocity change functions.
Remove superfluous velocity change functions.
Make implicit accelerations and limits explicit.
Switch to realtime keyboard state reads.
Tweak movement speed and acceleration.
Fix outer boundaries.
Conflicts resolved to agree with incoming branch.