Build with SDL 2 by default, but still support SDL 1.2

Closes #1064

Changes:
- SDL 2 libraries/headers are searched for in CMakeLists.txt
- getJoystickName() and getKeyName() added to InputState
- Copied over SDL_VERSION_ATLEAST statements from previous SDL 2 work
- Reset FULLSCREEN, HWSURFACE, and DOUBLEBUF when resolution changing
fails in GameStateResolution
- Wrap the appropriate code in SDLRenderDevice with SDL_VERSION_ATLEAST