Working on FETools::extrapolate in parallel

The FETools::extrapolate function does not work in parallel, because there can be patches with childs of childs ... which are artificial, but interpolation on a patch needs dof values of this cell. The idea is, to store the dof values needed to a list, send the data around to all processes and do the interpolation patch-wise.
All functionality is implemented in a struct CellDataHelpers, so the code is a bit more readable, hopefully, but this is work in progress, maybe some parts, for example sending data around, can be done more efficient and more elegant. If someone has an idea, great!!
I would store it as a `CellId` here and only convert right before sending.

As for the way you convert -- conversion to a string seems like a common enough operation that it would make sense to introduce functions `CellId::to_string` and `CellId::from_string` that do the conversion. This way, `CellId` can implement an efficient representation for these functions. In a first step, these functions may just do what you are currently doing, but in a second step this could be optimized to use some binary representation.