iVar to property conversion; removed lots of public stuff into category.
Oops. PreferenceController needs to be public so we can get a reference to it.
Reimplemented Preferences as singleton; repaired broken save pref change notification.