Switched back to using uniforms for light parameters, as using the fixed
function state killed my frame rate.  Also cleaned up some of the location
tracking.
Merge pull request #3197 from ey6es/master

Not sure if everyone sees this or it's just my machine, but the frame rate slowed dramatically using the fixed function state for lights.  This switches back to using uniforms.