Make the mouse's initial x/y state null

This will allow views to know that the mouse hasn’t fully initialized
yet.
Fix a small bug with touch events in NavList

change.keys was invalid. Use Object.keys instead.
Keyboard states allow keyword access.

Adding keywords to the change state.
Adding “Keyboard.state” which also handles keywords.

NavList now uses this method.
Updating the Demo view

Demo view now has new behaviour. Also now handles Mouse, Keyboard and
Touch events.
Adding unparam to JSLint settings

For now the WebGLBase application should show all available params to
functions event if they are not being used.
This will help for building future applications since a lookup won’t be
necessary to determine available parameters.