PluSDL An abstraction over SDL2 to take SDL_Renderer and SDL_Window management out of the user's hands