Added OpenGL format and swap interval conversions
Have PresentationParameters ready for SetupGL()

This is required for setting up the OpenGL context attributes.
Moved OpenGL context to GraphicsDevice.OpenGL

MonoGame is not using any of the higher-level facilities of
OpenTK.GameWindow. Conceptually, it makes sense to base MonoGame’s
OpenTKGameWindow on OpenTK.NativeWindow and move the OpenGL context to
GraphicsDevice.OpenGL.

This has two advantages:
1. MonoGame applications no longer initialize OpenGL unnecessarily
before instantiating a GraphicsDevice service.
2. GraphicsDevice.OpenGL has enough information to setup the correct
OpenGL attributes for color, depth and stencil depth, as well as
multisampling. This was not possible before, since the
PresentationParameters are not available when a GameWindow is first
constructed.
PresentationInterval for WindowsGL and Linux

This includes support for adaptive vsync.
Move background context to GraphicsDevice.OpenGL

We should not create a background OpenGL context until the application
adds a GraphicsDevice.
Ignore resize events until init is complete

This fixes a crash on startup related to OpenTKGameWindow.Game being
accessed before it is instantiated.
Make the GameWindow visible in BeforeInitialize

OpenTK.NativeWindow is normally invisible, until explicitly made
visible. GamePlatform.BeforeInitialize() is a reasonable place to do
this.
Only delete BackgroundContext on WindowsGL & Linux

Other OpenGL platforms perform context management on their GameWindow
implementations instead.
Initialize game property before hooking up events
Fixed background context sharing

The background context must use the same pixel format as the foreground
context, otherwise context construction may fail.
Respect PreferMultiSampling property
Set GameWindow.Handle

This patch removes an instance of reflection from the startup path.
Closes #2179
ResetWindowBounds has change signature
Query MaxTextureAnisotropy in GraphicsCapabilities

This used to be queried in the SamplerState static constructor.
However, that constructor could be called by Game.Dispose() even when a
GraphicsDevice was not available, causing an instant crash. This is now
fixed.
Fixed compilation on iOS.
Merge pull request #2398 from thefiddler/glcontext

WindowsGL & Linux: implement backbuffer color, depth, stencil, multisampling