Added raycasting to pointclouds with BufferGeometry + some other modifications

In addition to the fix https://github.com/mrdoob/three.js/pull/4747 of the issue https://github.com/mrdoob/three.js/issues/3492

- raycasting to BufferGeometry
- BoundingBox test
- Variable threshold using raycaster.params.PointCloud.threshold. Is this ok?
- added webgl_interactive_raycasting_pointcloud.html to examples. [Here is an online demo of it](http://potree.org/demo/three.js/dev_pointclouds_raycasting/examples/webgl_interactive_raycasting_pointcloud.html)
- The "distance" parameter of intersections now contains the point-origin distance. The point-ray distance is stored in "distanceToRay" instead.