Change divergence functions to take as argument objects that return required data.

Makes the functions not depend on generic simulation cell being used as data in simulation cells.
Add a fast magnetosonic wave propagation test.