base: Debug output fixes for cockpit.http()

Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
bridge: Fix issue with header values that contain spaces

The CockpitHttpStream code refused header values that contain spaces.

Closes #1568
Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
shell: Don't load jquery-flot.js twice

Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
shell: Use CSS to display and hide buttons in Dashboard

Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
shell: Cleanup some of the ugly inline styles and other CSS on dashboard

Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
shell: Dashboard servers not links while editable

The various dashboard servers are not links while in edit mode

Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
shell: Cleanup rats nest of callbacks for dashboard hosts

We should be separating logic from presentation at least a bit.
Use data- attributes and delegated callbacks to accomplish this

Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
shell: We never 'leave' the dashboard page, just hide it

Most of the legacy PageXxxx stuff is deprecated anyway, but going
forward we know one thing, we never really .leave() the dashboard
it is always being updated and a constant part of the shell.

Closes #1565
Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
shell: Fix dashboard plot highlighting

 * There is no "series-plot" data attribute, so find the series
   belonging to an item via the address.

 * Only move the plot to the front when turning the highlight on, not
   when turning it off.

Closes #1572
Reviewed-by: Stef Walter <stefw@redhat.com>
shell: Remove sidebar styling, since we don't have a sidebar anymore

Closes #1573
Reviewed-by: Stef Walter <stefw@redhat.com>
base: Distribute mustache and bring it into base package

This is a simple templating library that fits quite well with jQuery
and our method of operation. We don't currently do incremental DOM
updates, but that will come in a later iteration.

Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
 * Added license text
shell: Use Mustache to render the Servers on the dashboard

Note that we can't use .data() with data-* attributes as these
may change underneath jQuery.

Closes #1566
Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
 * Adapt tests
static: Distribute mustache.js

From Stef.
base: Never recreate mustache.min.js as it's preminified

Closes #1576
Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
shell: Color the left side of Server list on dashboard rather than box

Put a color band on the left side of the servers instead of a box
around the icon. This looks better.

Closes #1571
Reviewed-by: Marius Vollmer <marius.vollmer@redhat.com>
websocket: Allow parsing the HTTP version from responses
bridge: Implement keep alives for http-stream1 channels

We keep one connection around for 10 seconds in case another request
comes for the same thing.

In addition callers can specify a "connection" identifier which
allows them to reuse a specific connection if it is still open. This
is useful for strange connection based authentication schemes.
examples: Proof of concept talking to CIM

Talk to CIM using local authentication and retrieve some data.
This is a proof of concept example, and doesn't really do anything
magical, just proves it can work.

Closes #1569