WebGLRenderer: Making z sorting more stable. See #3315.
Updated builds.
added documentation
WebGLRenderer3: Added normals, programs cache, fallback for program compiled with errors and basic support for ShaderMaterial.
WebGLRenderer3: Added MeshNormalMaterial support.
Refactored Curve.js to individual classes (#3378)

Split /src/extras/core/Curve.js to
/src/extra/curves/*

LineCurve
QuadraticBezierCurve
CubicBezierCurve
SplineCurve
EllipseCurve
ArcCurve
LineCurve3
QuadraticBezierCurve3
CubicBezierCurve3
SplineCurve3
ClosedSplineCurve3
Updated builds.
Brief:Implementing raycasting for dynamic buffergeometry
Summary:
BufferGeometry allows faster loading (direct buffer loading)
but not ray casting.  This adds that (if it is dynamic)
Cleaned up Raycaster BufferGeometry implementation.
There are many allocations that would still need to be removed though.
Updated builds.
build.py: Adding \n at the end to avoid breakage between files.
Added VertexNormalsHelper and WireframeHelper. Tweaks to BoxHelper and FaceNormalsHelper.
Updated builds.
Uncommented the right code in helpers example.
WebGLDeferredRenderer: Removed global camera dependency. Fixes #3120 and #3433.
updated signals
Merge branch 'drive' of https://github.com/arodic/three.js into drive