Added optional lightMaterial argument to setLihgtEnabled, this allows for custom light passes.
Tidied up.
Removed emscripten specific PRNG, now just usesed C++11 PRNG.
Added method for generating uniform random floats within a range.
Removed ambiguity with new random functions.
Added water example.
Added numLights member.
Added virtual clone method, to be used for recompiling a shader with a different number of lights.
Updated to use new light pass method.
Added clone method.
Added setMaterial method.
Optimised rendering to make only one pass, lighting is now handled entirely by shaders.
Updated stress example to use new rendering techniques.
Updated TextureMaterial to use new rendering technique.
Added clone method.
Updated ColourMaterial to use new lighting technique.;
Added clone method.
Removed old light pass code.
Removed old light pass materials.
Made some methods pure virtual.