Refactoring some of the GraphicsDeviceManager and SDL2_GameWindow to properly handle user resizable windows

With an XNA 4 game, when the user resizes the window, the GraphicsDevice's back buffer is resized to match. FNA wasn't properly doing this. The device resetting/reset events should also be raised before the client size change event.

These changes refactor some of the code for ApplyChanges so that FNA now properly handles the case when a user resizes the window (predicated on them changing the #define in FNA due to SDL2 not enabling changing the resizable flag).

Testing this side by side with a blank XNA game it seems to work as expected, and it works well for my game-in-progress, but you probably should test with some real world games to ensure this doesn't negatively impact them in some way.