Support glProgramUniform*() calls from OpenGL ES 3.1.

The code both supports new features *and* is shorter, yay!
Mark also all GL 4.5 extensions as supported if GL 4.5 is supported.

Oh god, it got to the point where I should write an HOWTO *for myself*.
Preparation for ARB_direct_state_access GL 4.5 feature.

Renamed all EXT_direct_state_access implementations to reflect the fact
that these aren't using the ARB extension.
ARB_direct_state_access support for creating textures.
ARB_direct_state_access support for creating buffers.
ARB_direct_state_access support for creating framebuffers.
ARB_direct_state_access support for creating renderbuffers.
ARB_direct_state_access support for creating meshes.
doc++
Gentoo ebuild
Doc++, updated credits.
doc: GL mapping cleanup, separated the table by letters.
doc: added forgotten glHint() to mapping table.

There are probably more.
doc: added upcoming glGetQueryBufferObject() to mapping.

Added as bugfix to ARB_direct_state_access (GL 4.5), mentioned in
https://twitter.com/piers_daniell/status/510106059348770817.
doc: cleaned up GL support table to have the col separator at tab stop.
doc: added GL_MAX_VERTEX_ATTRIB_STRIDE to mapping and support table.

Added in 4.4 but not backed by any extension.
doc: removed deprecated GL features from the mapping table.
doc: explicitly mention that we support all GLSL versions.

The support is just a matter of adding a value to switch in Shader.cpp,
but even that must be done by someone.
Replaced NV_half_float with hopefully more standard ARB_half_float.

According to reports on delphigl.de this extension is far more supported
in comparison to the NV version (and also there's much less FF cruft in
the specification).
doc: cleanup.