Moving backwards though the form now brings the user to the expected step.

There was a mistake where a step was reverting its global changes before it was
actually selected as the previous step. Innocuous enough but it had strange
side effects on the global storage, since the step list would be rebuild with
this information, steps could insert themselves as previous steps even if they
weren't used by the user.