add easier support for key codes in JS by adding text property and auto-detecting isShifted