GRIM: Enable screenshot saving on ES2
EMI: Reroute AttachActor/DetachActor to debug channel
GRAPHICS: Allow FrameBuffer to manage its own texture
GRAPHICS: Allow guarded use of Graphics::Framebuffer

Raise an assertion if a framebuffer is requested without the correct
extension
GRAPHICS: Render to framebuffer [OpenGLS]
GRAPHICS: Render to framebuffer [OpenGL]
JANITORIAL: Fix style issues
GRAPHICS: Do not use framebuffers in AmigaOS
GRAPHICS: Draw the overlay above the game
GRAPHICS: Make sure the game only knows the size that's available for it to draw
GRAPHICS: Scale the mouse coordinates when drawing to a framebuffer
ENGINE: Add an engine feature to indicate an engine can render to any resolution
SDL: Use the desktop resolution for fullscreen when the engine supports it

Conflicts:
	backends/graphics/surfacesdl/surfacesdl-graphics.cpp
GRAPHICS: Clear the extensions list before initializing it

Graphics::initExtensions may now be called several times.
GRAPHICS: Probe system for GL_EXT_framebuffer_object

And disable the framebuffer functionality if it is not supported.
GRAPHICS: Store _aspect_ratio setting as instance variable
GUI: Re-enable 'preserve aspect ratio' checkbox
GRAPHICS: Dynamically find function pointers for framebuffers
GRAPHICS: Spawn OpenGL test window off-screen
JANITORIAL: Code style fixes