While namespaces act for hierarchy, modules are something like "tags" -
usable when you want to check related classes of e.g. CubeMapTexture.
Not sure how to name module for Math and Physics namespaces and
Contexts/Trade, though.
Fixed a few typos in extension names, fixed BPTC texture compression
typos. Removed redundant EXT_framebuffer_object from functions as the
Framebuffer class itself has it.
The requirements are cross-referenced to dedicated page, similarly to
TODO and bug lists.
Also updated / improved documentation for some texture / image formats.
* Renamed Type enum to Target to be consistent with OpenGL naming
* Strongly typed enums
* Ability to specify different type when binding/setting data
* Added missing buffer targets
Not using macro this time, as some classes could want only to disable
either copy or move and with macros this would become unintuitive and
error-prone.