ws: Add cockpit_web_server_get_document_roots() function

This is a handy accessor to get the already resolved expanded
root document paths from the web server.

Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
pkg: Simpler AMD module ID calculation

Simplify the calculation of AMD loader IDs, and finding paths to
where to load other modules from. In particular, remove hard coded
base paths.

Then take away the 'cockpit/' prefix, in our module ids. It was
repetitious and made it hard for tests to run in our checkout tree.

Closes #1507
Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
bridge: Allow calls without arguments without introspection

Calls without arguments can proceed without introspection data. In
addition default to zero arguments when a DBus call is made without
arguments.

Closes #1510
Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
shell: Hide everything but top bar until ready

The shell initializes asyncronously, it waits for package loading,
and soon it will wait for AMD modules as well.

Only show the very top bar until we're ready to start interacting
with the user.

Otherwise we see very ugly things like a half drawn dashboard before
jumping to another screen.

Closes #1509
Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
shell: Use watchdog channel for disconnects, and reload on Reconnect

Use a watchdog 'null' channel to watch for disconnects.

Given channels other than dbus, it's not possible to just reconnect
channels and try to patch things up on a disconnect. We really do
have to reload the current page.

We try to reestablish a connection as we're showing the Disconnected
dialog, which keeps our session alive until the user chooses whether
to Reconnect or Logout.

Closes #1508
Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
shell: Guard dashboard against untimely changes

Closes #1514
Reviewed-by: Stef Walter <stefw@redhat.com>
server-systemd: Migrate journal code into a package

This moves server code into a package. Put the main journal
into a component that is shown in an iframe.

The shell loads the server AMD module somewhat awkwardly, but
that's because it's not AMD code.

Fixes #1418
Closes #1473
Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
Bump version number
tools: Bring changelog from Fedora cockpit.specwq
bridge: Add fsread1, fswrite1, and fswatch1 payload types.