SDL2: First round of changes to upgrade to SDL 2.0.0

* Going to be a big upgrade with lots of changes.
* SDL2 branch will be merged back to mainline at some
  point.
SDL2: Second round of changes for SDL 2.0.0

* It compiles, horribly broken though.
* TODO's littered throughout
SDL2: Create window using SDL2

* Create window and renderer, set title
SDL2: Improve tracing of gfx debug output
SDL2: Begin using OpenGL for drawing screen

* Thanks to Danbrook for the hand in getting this started!
SDL2: Clean up screen.

* screen should be 8bpp
* physical_screen should be 32bpp
SDL2: Redesign screen mode switching

* Still having graphic corruption issues
SDL2: Working black-and-white image

* I need to convert the 8-bit image to RGB somehow
  before OpenGL gets a hold of it.
SDL2: Fix non-zoomed video output

* Use built-in rgb function to draw video
* Need to investigate side effects of using
  that vs osd_gfx_buffer.
* Graphics now working.
SDL2: Style cleanup in gfx engine
SDL2: Fix SDL keybindings

* Keyboard working again
* Moved to SDL_SCANCODE
  - This keyboard config is a mess and needs redone
SDL2: Drop un-needed hardware-scaling setting and host video setting
ini: Fix segfault on no -z value
SDL2: Fix memory corruption potential

* Simplify code, no more mallocs ever frame
SDL2: Fix screen scaling

* OpenGL now scales the texture to the chosen window size
* Faster!
SDL2: Eliminate physical_screen buffer

* Remove blit, now we write to the SDL_Surface
  and pass that directly to openGL for scaling.
SDL2: Cleanup un-used cruft

* Prototypes go in headers