JSON events (update and changed) in preferences

Added events for when JSON prefs have been updated (saved to pref store) and when a value has been changed (for updating views and affected elements).

@devoncarew