WIP state from 2014-04-14 before going home for a week
Change the old tick and key handlers into the new event stuff. Fix errors.

Untested, probably badly broken, but now with 0 errors in eclipse.
Change a lot of the instance handling/storage stuff. To be cleaned-up better.

This version mostly works already.
BUGS/issues: The motion is jittery/non-smooth,
and the control locking doesn't work properly, like it did in 1.5 and 1.6.
It lets through the initial key press for a split second, and if the mouse
is clicked and dragged, the screen moves a little bit.

And then the overall program structure could use some serious cleaning
up...
Update build.gradle
Bump version number to 1.7.2-3.1.0-a4 for development towards next version.
Fix the lock controls functionality by calling that stuff in PlayerTickEvent.
Partially fix the motion jitter by also moving that call to PTH.

The motion is still a little laggy/choppy at times, so something might
need to be changed still.
Allow for negative zoom values. Not sure if it makes sense but hey...
Add ctrl + middle click as a way to invert config values (+/-)
Changes to the tick/event stuff to fix some problems and timing bugs.

Moved the mouse locking and motion back to ClientTickEvent.
It seems to work if it is executed in the END phase.
The PlayerTickEvent would get executed both on the client and the server
side, and also it seems to fire twice per tick, with 15ms and 35ms
intervals.
The keyboard key locking is now done in the KeyEvent handler.

This commit includes commented out debug code.
Remove the debug code from the previous commit.
Change the order of scheduling screenshots vs. doing the motion.

This just fixes the super minor annoyance of motion continuing
after timed recording ends, for about one tick.