Fixes https://github.com/vector-im/riot-web/issues/13645
Every time the checkbox value changes we acquire a new session now. This avoids us asking the server to change its direction partway through the request.
This causes a bit of UI jerk as the dialog goes from auth -> loading -> auth, however it's better than the alternative of reworking the entire UIA structure to support the `authData` dict changing. Originally this commit consisted of a `disabled` flag on the `InteractiveAuth` component which carried through to the stage's component, however it turns out that stack doesn't respect changes to the `authData` prop, which means the session ID we eventually send down is wrong (`erase: false` instead of the one with `erase: true`). Therefore, we do some logic to ensure we remount `InteractiveAuth` completely.
Further work in this area is described in https://github.com/vector-im/riot-web/issues/13646