Replaces direct comparison of defaultAIModel with mapEquals to ensure deep equality. Updates related tests to include defaultAIModel in test cases for serialization, deserialization, copyWith, and toString.
Corrects the deserialization of defaultAIModel to ensure it is properly converted from dynamic to Map<String, Object?>. Also fixes a typo in the serialization key from 'defaultLLMSaveObject' to 'defaultAIModel'.
Replaces the previous placeholder for default LLM selection with a working default AI model selector in settings. Updates SettingsModel and related providers to support storing and updating the default AI model as a JSON object. Integrates the selector UI and ensures new AI requests use the default model if set.