Refactoring of SettingsViewModel class

Some refactoring and cleaning around SettingsViewModel. Registry access
responsibility moved to a new class. No new features introduced.