Body reallocation
This MR adds an efficient method to keep subdomains compact and non-diffusive over time in MPI runs. With this addition the MPI framework is complete. Visual example in this video.
Further performance gains could be obtained by re-implementing some parts of the re-allocation algorithm in c++.