Rays no longer store precomputed data for optimizations.

The data is now pre-computed at strategic places in the code as needed.
This reduces the memory footprint of rays, but without any notable slowdown.

Also enabled -ffast-math for now.  It gives a slight performance boost.