common: Clearer split between CockpitPipe and CockpitPipeTransport

After this commit CockpitPipeTransport owns a CockpitPipe. This
simplifies the spawning constructors, and moves the cockpit-ws
logic into that code, rather than leaking it into common code.

In addition the "name" property of CockpitTransport, doesn't need
to be writable. Each of the transports now derive their logging name
from another property.

Closes #503
ws: Use global tunables for setting testing/debug/mock options

Instead of cluttering up function signatures, use global tunables
to set tunables used during testing or in debug mode.