Import SDL_gpu sources.

NOTE: no SCons build yet.
Enable OpenGL rendering.
Add alias for SDL_gpu/SDL_gpu/SDL_gpu.h.
Fix GPU_Init flags.
Port the load screen to use SDL_gpu.
Don't ignore CMakeLists.txt.
Commit missing CMakeLists for SDL_gpu.
Don't ignore txt files.
Fix SDL_gpu CMake build.

Patch provided by mordante.
add game_data::get_variable_accesss method.
move variable_info to own file

and also move game_data::temporarites_ to that file as a static
variable.

This fixes variable_info being dependent on game_data.
move partly [set_variables] code to variable_info class
add variable_info::clear method

move code from game_data

the plan is to make variable_info s member private.
add method variable_info::as_scalar_const
add variable_info::add_child method
add variable_info::as_array_throw method
make variable_info members private
make different functions for different variable access

the const_cast there is an improvement of the previous solution where we
just hided it by using resources::gamedata which is never const.
add comment about [insert_tag]
catch invalid variablename exception when using

these exceptiosn are not thrown yet in all cases. This patch prepares a
patch taht makes use of it.