Resource Channels and Shell Module

This implements resource channels, cockpit modules, and exposes them via HTTP. The entirety of cockpit-web now becomes a single module called 'shell'. In the future modules will be split out of it.

On the javascript side, the full infrastrucutre for modules (such as how they interact with pages and build into the UI) has not yet been implemented.

See doc/urls.md and doc/modules.md for details on how this is implemented and works.

This replaces pull req #681