Implement the preference page

user preference save to and restore from UserDefaults, need some ui layout and constraint, will sync to backend when API become available in future.