Remove documentation for getRotationFromMatrix() in Vector3
Support custom BufferGeometry attributes in WebGLRenderer.

- fixes #3017 and possibly #3084
Adding custom BufferGeometry attributes support to WebGLRenderer2.
Flipped UV debug viewer output. It was rendering upside down.
Proper attributeSize declaration in WebGLRenderers
Supporting updates with BufferGeometry as discussed in #3088

Use

geometry.attributes.index.needsUpdate
geometry.attributes.position.needsUpdate
geometry.attributes.normal.needsUpdate
geometry.attributes.uv.needsUpdate
geometry.attributes.color.needsUpdate
geometry.attributes.custom.needsUpdate

instead of for usual geometries

geometry.verticesNeedUpdate
geometry.elementsNeedUpdate
geometry.uvsNeedUpdate
geometry.normalsNeedUpdate
geometry.colorsNeedUpdate
geometry.tangentsNeedUpdate
Add BufferGeometry + Custom Attributes + Particles example.

This seems to get 15fps faster than the non BufferGeometry counterpart.
Note that buffergeometry.dynamic = true is required for updates
Also cleaned up WebGLRenderer
More refactoring with BufferGeometry in WebGLRender to reduce code.

Its tempting to go on, but would stop here to make sure there's no regression.
Also, will have to port these changes over to WebGLRenderer2
Refactoring addObject WebGLRenderer to make code cleaner
Prevent BufferGeometry custom attributes's array from being deleted by setting geometry.attributes.name.dynamic = true
Made CanvasRenderer and SVGRenderer behave like WebGLRenderer with MeshLambertMaterial and no lights.
unit conversion is only applied in root node.
initial implementation of ColorConverter.
add Color.equals.
tests for ColorConverter.js.
57dev
Code formating clean up.
Merge branch 'master' into dev
Merge remote-tracking branch 'gero3/dev' into dev
Merge remote-tracking branch 'WestLangley/dev-uvs' into dev