Add output of maximum angle between neighbouring magnetisations

* Calculation done per element
* Then take max over all elements
* Can also get list of max per element

* Also updated doc functions in semi implicit problem
  To work with my new scheme where most of the functionallity is inherited.
Move mesh construction to be as late as possible in factory functions

Because it is slow and we want to get any errors from other parts of the
function ASAP.