Miscelaneous fixes

Both `Frustum` and `Raycaster` assume the `boundingSphere` is zero-based. I made some corrections consistent with that assumption. We can implement non-zero-based bounding spheres later.

`TubeGeometry` had some numerical issues.

Added calls to recompute the bounding box/sphere in `Geometry.applyMatrix()`. ( I do not feel such a change is appropriate for `Object3D.applyMatrix()`, as these bounds can become invalid after every transformation. )