Split the GameView code to support different rendering classes

Registered by Timowi

Currently there is only one GameView renderer with two different code paths for OpenGL and SDL rendering. This class is responsible for rendering the complete game, the minimap and watchwindows. The current system is difficult to extend for more advanced renderers.

Rewrite the code the following way:

Make GameView a base class and move code to two different classes GameViewOpenGlBasic and GameViewSDL. GameView is the base class of them.
Create a Class GameViewManager which allow registering different GameView classes. In the game a renderer can be chosen from different available (and compatible with graphic mode).

The Base class should provide functions the get
- name of the renderer
- if it is compatible with current graphic mode
- A common interface called to render the game

Blueprint information

Status:
Started
Approver:
None
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
None
Definition:
Approved
Series goal:
None
Implementation:
Started
Milestone target:
None
Started by
Shevonar

Sprints

Whiteboard

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.