added raycasting of pointclouds with BufferGeometry

added optional parameter intersectPoint to Ray.distanceToPoint()

fixed Ray.distanceToPoint()
hide lens flare if not visible
Code clean up.
Add methods .merge and .makegroups
added raycasting pointcloud example. fixed raycasting issues.

fixed example
fixed touch event handling in transform controls
fixes issue #4771
Merge remote-tracking branch 'm-schuetz/dev_raycasting_pointclouds' into dev
Spaces clean up.
More clean up.
Updated builds.
Merge pull request #4787 from paulmasson/patch-1

Add methods .merge and .makeGroups
Moved Raycaster's Sprite code to Sprite.raycast(). See #3492.
Updated builds.
Added raycast() method to Object3D.
Support for export to binary STL.

Binary STL shaves file size down quite a bit, for example a recent random file went from 2.2mb to 714kb. For more savings, ZIP on the binary STL shaves an addition 1/3, which takes the same file down to 270k. Use ZIP.js, JSZip or another option to handle this last step.
Fix array overflow in Raycaster.intersectObject for indexless buffergeometry
Also removes unused offsets var.
Removed shims for IE9.
Implemented Object3D.DefaultUp. See #4790.
Updated builds.
Merge pull request #4792 from arodic/dev

fixed touch event handling in transform controls