feat(settings): switch the integration in-app instead of hard-reloading
Because: * Four routes used hardNavigate to change the integration, so the full page load lost location state. This commit: * Adds useSwitchIntegration, which bumps an integration version and navigates in one transition. * Makes the client info, CMS and legal terms hooks refetch for a new version. * Resets App session state and the Glean integration on a switch. * Converts Pair, ConnectAnotherDevice, ThirdPartyAuthCallback and useOAuthFlowRecovery. Closes FXA-14791