Plugins

Docs is still missing.  Basic infrastructure is in place.

All kind of comments are more than welcome :)

- [x] basic infrastructure
- [x] adopt it for built in stuff
  - [x] www
  - [x] slaves
  - [x] change sources
  - [x] schedulers
  - [x] steps (seems the most "interesting")
  - [x] status receivers
  - [x] utilties
- [x] provide unit tests
- [x] update release notes
- [x] update documentation
  - [x] user documentation
  - [x] packager documentation
It looks like the only thing using this is `self.apps` in the www service, allowing that service to continue to treat it as a dictionary.  But it would be just as easy to refactor that module a little to call `get` directly, with the benefit of some clarity.