This PR has a large blast radius because it takes the final step and bumps up the Controller to be fully async.
We have historically done a piece-by-piece update, so all operations were already async but the controller interface was kept synchronous.
With this update, the controller is now fully async and all tests are updated.
Most places where the new C# compiler warns about function names not ending in `Async` were also adressed, giving a massive refactor change.
Functionally, no changes are done.
When using the TrayIcon with no hosted server (i.e., connecting to a running server), it is now possible to save the password and url in the secret provider.
There is a checkbox that allows saving the settings, and if checked, will save the settings to the secret provider (using the OS default if none is specifically provided).
This fixes#6379
This PR adds the option to provide additional settings when importing a backup.
The ServerUtil has been expanded to support passing in the target url and backup passphrase when importing a backup.
Also clarified wording around the import passphrase as there are (at least) two passphrases related to imports.
This fixes#6640