Subset sorting
Massive change in the way we treat sub-cell tasks and sorts in general, i.e.:
- Sorts and drifts now unlock all sorts and drifts above them, this ensures they are executed bottom-up even if intermediate tasks are not active,
- Sub-cell task hierarchies are traversed consistently during density/ghost/force computations,
- Sub-cell tasks no longer do the drifting and sorting themselves,
- Sorts are only re-computed once the oldest sorted index goes stale.
- Ghosts exist at a lower level in the tree.