Always output 3 entries for H_ms in element output

Otherwise data is screwed up: index of m etc. changes depending on
dimension. Would break Paraview macros.
Add micromag.h dependency to llg driver Makefile.am
Add ability to output only at specified times

and use it in llg_driver and semi_implicit_mm_driver
Add command line option to control doc times

* Move creation of doc times vector to factory function
* Force always output in llg_jacobian self tests
  So that we can check all the Jacobians.
Use "; " as separator for trace file data

Also write lots of comments about this stuff, and various bits of tidying
up.
Write full lists rather than mean+stddev to trace file for times etc.