Civi::pipe - Convet from service-registry to negotation-flags
How will the protocol evolve? This changes the planned mechanism that will allow evoluation.
_Previous/Original_: Protocol had a version number.
_Previous/Interm_: Any change to the protocol requires registering a new service. New
connections must strictly choose between one service XOR another service.
_Now_: Any change to the protocol requires defining a flag. There is a list
of default flags, but callers may request alternative flags. The header
line indicates success or failure of these flags.
Comment: Handy characteristics of this design:
* Default info is generally more useful and skimmable.
* Addresses the current trusted/untrusted flag.
* Expands the default info to include (1) CiviCRM version and (2) whether logins are allowed.
* Allows augmenting or replacing jsonrpc-2.0 (if we don't like it).
* The `Civi::pipe()` shell statements remain pithy - even if they require extra flags.