Syncthing's web GUI will only require login credentials if both a
username and password are configured. Expose both of these through a
new services.syncthing.guiCredentials submodule, and require migration
to the new configuration to catch anyone who has only configured a
password using the old services.syncthing.passwordFile option.
Additionally, make sure that the syncthing-init script to set
configuration using the API is enabled if there is any such
configuration that needs setting. Without this fix, configuration that
was set using the API, notably guiCredentials/passwordFile and
guiAddress, would not be set at all if there wasn't also something to
configure under services.syncthing.settings.
Co-authored-by: Robert Helgesson <robert@rycee.net>