An `Optimiser` is an optimisation algorithm that may work either
 in 'transformed' parameter space (where parameter constraints are
 automatically handled) or in 'detatched' space (where the optimisation
 algorithm is responsible for respecting parameter constraints).