WebGLRenderer: Making z sorting more stable. See #3315.
Updated builds.
added documentation
Merge remote-tracking branch 'cjshannon/dev' into dev
WebGLRenderer3: Added normals, programs cache, fallback for program compiled with errors and basic support for ShaderMaterial.
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)
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.
Merge remote-tracking branch 'kevinoe/BufferGeometryRaycast' into dev
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 deleting
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.
added undo and redo
Merge branch 'dev' of https://github.com/mrdoob/three.js into drive