Smoother and terrain-aware camera
Closes #40 (closed). Closes #29 (closed).
This doesn't fix looking into the terrain 100%, as it only casts a single ray -- you can still get a glimpse into the terrain by positioning the camera so that the near plane clips the obstruction away. Two options are
- Enhance the ray casting code to allow rays with a "radius"
- Cast four rays to the four corners of the frustrum where it intersects with the near plane, then take the min.