remove unused variables from Raycaster.
add Plane.flip() plus unit test.
add Frustum.containsPoint, containsSphere + first Frustum unit tests.
polishing frustum to a first class member of math.
more Frustum unit tests + minor optimization to Plane.
always use local var planes = this.planes in Frustum. fix common include to require Sphere before Frustum.
Merge branch 'dev' of git://github.com/mrdoob/three.js.git into frustum-additions

Conflicts:
	src/math/Plane.js
fix sign/comparison in Frustum.containsSphere and add unit tests.
rename Plane.flip() -> Plane.negate() per @mrdoob
fix ArrowHelper so that it can deal with normals pointing down [0,-1,0] via creating a unit test (makeBasis).
optimization of ArrowHelper.setDirection suggested by @WestLangley
cleanup ArrowHelper GC usage, switch matrix->quat.
remove unnecessary Matrix4 unit tests.
robust support for multiple duplicate vertices in Face3 and Face4, add handling of vertex colors and vertex UVs.
Geometry.mergeVertices: remove unused variables, rename non-descript 'o' to 'indices'.
add webgl_geometry_normals.html - example that shows vertex normals and face normals of standard geometry types before and after Geometry.mergeVertices
reduce ArrowHelper axis check precision and improved formatting per @gero3
expand Frustum.contains() per @alteredq, @gero3
fix formatting per @WestLangley.
move credit for barycoord function from Raycaster to Triangle per @mrdoob.