Great results gpenny! That is similar to how I did the metaballs for the protostar demo by starting the raytrace with proxy geometry that was a bit larger than the actual spheres.
Re: deathray, basically you just need to use inverted polygons and solve a ray equation for where the box would have intersected the volume. Then you can pre calculate the number of steps through the volume and remove all math or branching to ensure the ray stays within the volume (you dont need to check every iteration when you know it will stay within due to precaulation of ray size and step count). Doing that alone saved almost 30% of the total time in my tests.
This is simple for things like boxes or cylinders but not as simple for gpennys method of arbitrary shapes. You could try to fit a box tightly around each cloud perhaps.
Termination of rays can occur anytime density goes over a certain threshold (which is the same as transmission going under some threshold).