Implemented SDL2 mouse and keyboard drivers
Made internal SDL2 API private
Renamed Sdl2InputBase to Sdl2InputDriver

Sdl2InputDriver describes the role and function of this class more
accurately.
Fixed documentation comment
Fixed return values of keyboard functions

SDL_GetKeyFromScancode and SDL_GetScancodeFromKey should return a
SDL_Keycode or SDL_Scancode respectively, instead of void.
Use scancodes for KeyboardDevice states

This resolves the issue where different layouts would return different
keys when pressing the same physical key. A new API must be introduced
for text input.
Renamed Sdl2InputBase
Attempted to fix key modifier state

SDL2 does not report keydown and keyup events on modifiers keys until
you release them. Attempted to fix this using SDL_GetModifierState, but
this does not appear to work. Should hit upstream.