Add event data for mouse button clicks field

This field was introduced in SDL2 v2.0.2.

* Remove window_id field from JoystickButtonEvent; this field is
confirmed (see mailing list) to be intentionally left out of SDL's
joysticks API.
Introduce new keyboard action trigger; repeating key press

This feature allows us to act upon a key press dependent upon the
state of key repeat; see SDL2 docs on KeyboardEvent's repeat field.