Introduce the `upgrade` flag to the constraint solver

and clean up options in general