Fixed function bump mapping/EMBM

I would like to see fixed function support for bump maps, including diffuse and specular lighting, and embm effects like reflections and advanced specular lighting using cube maps.

For diffuse and specular lighting, the bump mapping would replace the existing lighting model, while retaining many of the same inputs (light properties and material properties). One texture unit will be used to specify the bump map texture, which contains normals clamped to 0.0, 1.0. The normals in the bump map will be considered relative to the facing of the polygon (as determined by vertex normals), and transformed as such by the GL implementation. Diffuse and specular amounts will then be calculated on a per fragment basis, according to the lights in the scene, material properties, etc.

For EMBM effects, a cube map can be specified for the second texture unit. This will work similarly to GL_REFLECTION_MAP_EXT and/or GL_NORMAL_MAP_EXT, but will use normals on a per-texel basis from the bump map, instead of on a per-vertex basis. The result of this operation can then be combined with the result of the lighting operation described above through GL_ARB_tex_env_combine.