AjaxButtonView now ensures it doesn't run action when disabled

By using a transaction, AjaxButtonView can be sure that the enabled Ref
is true when the action runs.
UserSignup now no longer needs the transaction and error check before
trying to finalise User.