Migrating EDEn code to SDL 2.0

[#49268621]

Migrates the codebase to SDL 2.0 by making use of new APIs where needed.
Specifically:
- The PlayerCharacter keyboard state check now uses scancodes instead of
keycodes as required
- The GraphicsUtil startup creates an OpenGL context and a window to
render to. The context lives for the lifetime of the app and may survive
past the lifetime of the window it was initially created for (if the
window is destroyed for a video mode change during the execution of the
game)
- Added some missing cleanup for SDL_Mixer resources

Also altered CMakeLists.txt to reference SDL 2.0 for Windows. The
changes needed for non-Windows machines to pick up SDL 2.0 will be
checked in with the next commit.
Updating SDL version numbers in README.md
Adding support for SDL2 in EDEn for Unix-based systems

[Finishes #49268621]

Adding three new CMake modules to help find SDL2 headers and libraries
(for SDL2, SDL2_image and SDL2_mixer). These modules are mostly
equivalent to CMake's existing modules for SDL 1.2, but have been
modified to find SDL2 instead of SDL 1.2 or below. They have also been
modified to locate includes in OS X SDL2 frameworks if they are
available on the system.

Added CMake's copyright text since these CMake modules should still be
covered under CMake's license. Updated README to clarify the difference
in licensing.

Modified the CMakeLists.txt file to use these modules to search for
SDL2 instead of previous versions on Unix-based systems. SDL 2.0.0 or
higher is now an absolute requirement for EDEn, and the CMake script
will no longer accept versions of SDL, SDL_image or SDL_mixer below
2.0.0 in the build process.