KeyboardZone: letters uppercase when shift down

Issue #51

This also adds the method isModifierDown(int KeyCode) for determining if
a given modifier is down