WIP: Dreduce.  Start making the kernel (haven't tried building it yet), and add min and max density fields to shape cell (checked, but not updated yet).
WIP: DReduce.  C++ module compiles, but not trying to call anything yet.
I think I now have a working dreduce, but with the current shapes (all full of little wiggly bits), it doesn't seem very useful...