Fix #588 - Refactor plugins.

- Added settings.py with PluginConfig.
- Rewrote jackaudio's load_init()
It shouldn't be possible for `self.config.source` to be not set since it has a default value of `''`.