Add in a better version of 3d scheduling to the serial backend.
This is the first step to having better 3d scheduling for the serial backend. While this doesn't improve the performance, it lays the foundation for allowing I,J,K indexing when iterating Cells of a uniform grid.