Lighting cleanup

This branch cleans up our lighting code:
- ppl doesn't require to upload the consts twice
- also for shaderManagers
- use structs for lighting constants
Should be in ShaderGenCommon then, not in ConstantManager. These strings have nothing to do with constant management after all.