First steps towards a functional threaded input system.
Triggering axes like buttons works fine now.
This seems to solve a bunch of problems with events that happen on keyrelease
A not-too important typo bug I found in the sound code.
Segregate input polling over thread, helper cleanups for debug and threaded libs.
A couple more guards and some more reasonable running-rates.
Axes return float of value instead of just true.

Also two small performance tweaks.
Optimize axis code, re-implement axis controls for all players.
Merge pull request #23 from variousauthors/input_thread

Input thread