Improved splitting peformance quite a bit.

Ray's inverse direction and direction sign are now precomputed and stored
in the ray again.  This speeds up splitting because it's difficult to
store those reasonably in the splitting loop, so they were being calculated
on-the-fly for every bounding box test.

Also stripped down the memory prefetch instructions.  Most of them weren't
actually helping, and the increased instruction count actually had a very
negative effect on execution speed.

Also changed the potint partitioning in the splitting loop to partition
away inactive rays.  This only really applies to shadow rays at the moment,
but it gives a noticable speed bump.

Finally, tweaked the max grid size for optimum performance on the utah
teapot scene.  Might not be the best default setting for a wide variety of
scenes, but it's a start.