Long-standing TODO. It is better to have size first, because it is more
significant than type (e.g. because there are Vector4<T> specializations
and not VectorT<4> specializations). It is also IMHO easier for user to
distinguish/read the type than before:
Vector<float, 4> -> Vector4<float> // before
Vector<4, float> -> Vector4<float> // now
Texture now doesn't have it's own redundant copy of target, but uses the
one from AbstractTexture. Subsequently, all DataHelper functions now
accept "untyped" GLenum as target for better flexibility.
CubeMapTexture is not based on Texture2D anymore, all references to cube
map textures were removed from Target enums, so it's now not possible to
create cube map texture other way than using CubeMapTexture class, which
is how it should be done in first place. The wrapping mode fix is thus
now trivial.
* Added asserts for unsupported mipmap and wrapping modes instead of
previous blind behavior, moved more-than-one-liner functions into
*.cpp
* Updated documentation to reflect the rectangle texture inabilities to
user, changed "unusable" to "incomplete" to be consistent with OpenGL
terminology.
* Removed some unneeded rows in documentation.