Added ContextSettings To Window Module's Include
Finer Control Over Window Creation

Added WindowSettings to allow for finer control over creation of
windows.
Made Window Use Context

Window now uses Context to handle the associated context rather than a
plain SDL_GLContext.
Pass ContextSettings to Window

This allows the user to specify the settings they want for the window's
context.
Context Creation Tries Multiple Versions

It will start with the most recent version given and then keep trying
lower versions until it gets one that works.