Add new command line options: newton solver tol and "damping override"
Don't try to do Mallinson solution for zero damping!

we get a division by zero
Add various bits of code for alternative damping constant recalculation methods
When doing parameter sweeps write command to a script file
Small improvements to python scripts
Use exchange length for length normalisation factor

* Removes dependence on exchange constant all over the place
* Verified that Jacobian and energies are unaffected by the change
LL residual inital commit

* Added options to specify residual to use
** Added residual calculator class
** Moved LLG residual code there
** Added LL residual code

* Added option to use FD Jacobian

* Added double cross product code (for LL residual), with tests
* Added dot product between arrays and vectors and mixed