Poor man's bounds handling.  Need to do this properly
Bump down tolerance and improve grad performance
Use conjugate gradient instead of bfgs
Change initial condition for minimiser
Improve diagnostics printing