This implements 'Option 2' - every-startup clearing of default values.
- Add clearDefaultSettings() function that checks all settings in
settingDefaults and clears any that exactly match the default
- Add runStartupSettingsMaintenance() as the main entry point that
runs both migrations (once) and default clearing (every startup)
- Update ContextProxy to use runStartupSettingsMaintenance
- Add comprehensive tests for the new functionality
This ensures users always benefit from default value improvements.
Note: Users cannot 'lock in' a value that matches the default.