[core][io] rework saving of process results.
There was a bug when saving ft.radius... that can be nan or numpy array. When try to save it as a numpy array then it ends up as an array of dtype 'object'. So to fix it we now store this as a dictionnary. And we add a try-except section when saving keys if return in the future is unsafe for hdf5.