Fix to improper input state swaps
Fix to improper input state swaps

Occurred when one would hold down a shift-sensitive character, then hold
down shift, then release the sensitive character. The release would not
trigger an input event. Example:

'7' was pressed
'Left Shift' was pressed
'Left Shift' was released

should have been

'7' was pressed
'Left Shift' was pressed
'7' was released
'Left Shift' was released

ssell/OcularEngine,ssell/OcularEngine