This is (another) first pass at improving the performance of the lighting code. As part of this refactor *we have lost glColorMaterial*. I need to figure out a nice way of implementing it without slowing the common code path.