Attempt to emulate luminance textures as they're quite common still.

* I emulate luminance textures as either GL_RED or GL_RG textures of
  appropriate size, and use the built-in texture swizzling to shunt the
  channels around.
* At the moment, I don't handle further swizzling of the textures (which
  would break the fake layer) as I assume legacy code using luminance texs
  wouldn't use swizzling also, but instead would just update and use the
  appropriate formats themselves.
* The same applies for render buffers, texture views, texture buffers and
  glTexStorage* calls - not handled at the moment, but wouldn't be hard to.