Support optional (non-builtin) plugins
This branch does the following:
- Adds a distinct notion of optional (i.e. not-auto-loaded) plugins, ensures these plugins are not loaded by default
- Adds a UI and GSettings for enabling optional plugins
- Adds set of interfaces that are more-or less API-stable for plugins to access common application objects
- Reworks and updates notification plugins to use the new API
- Converts the Unity Messaging Menu plugin to be optional, since the messaging menu is no longer used on standard Ubuntu installs.
See #155