Textures reorganization

Also adds the implementation of `UniformValue` for `CompressedTexture2d`, which was missing.