base: Move jquery bootstrap and term.js into new base package

And make the shell use this package.

The module is called 'base' but we go by the alias 'latest' which
contains the latest unstable Cockpit API. There will be counterpart
modules in the future.

Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
base: Move spawn.js and channel.js into base package

So they can be used from multiple packages. We also document them
in the guide and clean up the API a bit.

One minor change is that channels now automatically detect which
host they should connect to based on the page parameters.

Another is that the 'expect disconnect' logic is handled at the
lowest level, so it is available to all components.

cockpit.logout() also becomes a low level function which
integrates well with the other transport logic.

Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
base: Move common styling and images into base package

This renames the shell specific CSS into shell.css and splits out
the common CSS into cockpit.css

Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
server: Put the terminal into new server task and component

The server component will include various standard components
that don't have heavy outer dependencies.

Closes #1314
Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
doc: Add documentation for the terminal component

And further clarification about how embedding is used

Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>