SceneLoader: workaround for EventDispatcher problems when loading multiple objects with one loader.

Using classic "loader.load( url, callback )" API instead in OBJLoader, STLLoader, VTKLoader.

OBJMTLLoader is still having just the incorrect EventDispatcher API, but there the situation is more complicated.
WebGLDeferredRenderer: swapped order of color and normalDepth passes.

This is because we'll be needing normals in the color pass.
WebGLDeferredRenderer: added support for environment mapping.

It's a hybrid solution, cubemap pixels are fetched and blended in color pass based on deferred normals from normal pass.
WebGLDeferredRenderer: made pointlights work with hierarchies.
SceneLoader: fixed handling of environment map combine operation.

We now have also AddOperation, which was just ignored.
WebGLDeferredRenderer: disabling stencil test.

At least till not finding out why OpenGL renderer got broken completely :S
WebGLDeferredRenderer: closer look to forward renderer.

Make specular term multiplicative when specular color is zero.
WebGLDeferredRenderer: made width, height and scale parameters optional.

Defaulting to 800 x 600 x 1.

This allows for API more compatible with WebGLRenderer (empty constructor followed by setSize).

Though for deferred renderer it's more efficient to specify width and height in the constructor (otherwise initial render targets are just going to be trashed immediately).
WebGLDeferredRenderer: added setScale method.

This is the simplest way how to increase framerate in runtime (of course for the price of decreased visual quality).
WebGLDeferredRenderer: merged with @MPanknin's spotlights.

Todo:

- physically based specular
- wrap around lighting
- light cone proxy instead of fullscreen quad
- light distance attenuation
- move spot angle cos out of shader
- move light direction out of shader
- shadow maps

See #2624
WebGLDeferredRenderer: refactored spotlights.

Moved view space light direction and position computations out of the shader.

These are constant for every pixel affected by the light, so computation can be done just once per light in JS and then passed in as uniform.
WebGLDeferredRenderer: refactored light proxy updates.

Sharing the same code for initialization and dynamic syncing. Also made directional lights work with hierarchies.
WebGLDeferredRenderer: refactored directional lights.

The same like for spotlights slso here uniform for view space light direction is enough.
WebGLDeferredRenderer: refactored point lights.

Also here no need to recompute view space light position in shaders, uniform is enough.
WebGLDeferredRenderer: refactored light shaders.

Extracted common pieces of code into shader chunks.
Make CSS3DRenderer respect CSS3DSprite scale
WebGLDeferredRenderer: back to simpler light terms combine.
WebGLDeferredRenderer: more refactoring of deferred shaders.

More code chunks sharing and naming unification. This should make easier to add new light types and to modify lights features.
WebGLDeferredRenderer: added wrap around lighting to spotlights.

Also unified wrapRGB in all lights to (1.0, 1.0, 1.0). Still need to figure out some way how not to have this hardcoded.
WebGLDeferredRenderer: added physically based specular term to spotlights.

Also more shader refactoring and unifications across light types.