Update to master, some fixes

Ok going to submit this but I have no idea why it's gone batshit with the commit listing :/

Couple of points:
1. I changed the WindowSDL to have an specific opengl context rather than letting SDL pick a renderer, otherwise it chooses DirectX on Windows!
2. I enabled the video mode with what I'd done on my SDL2 branch (before I deleted it),
3. some ".unicode" stuff I simply commented out rather than fix.
4. I added that std::map for the Pi::keyState but a lot of the kep ampping is still bust.

It does now compile link and run against my pioneer-thirdpart/SDL2 branch which is using the latest SDL2.0 from the libsdl website.