RedWire frame handlers — pure request/response transformations
shared by the RedWire session loop. Each handler takes a parsed
payload and returns a length-prefixed response envelope; the
session adapts the envelope into a RedWire frame via
rewrap_handler_response.
Discriminator byte every RedWire client sends as the very first
byte off the wire. The service-router detector keys off this
(and so does the standalone listener path).
Start a RedWire listener on an already-bound TCP listener (used by
service_cli’s spawn_wire_listeners when binding the user-facing wire
port directly; the shared-port demux instead dispatches per connection
through handle_router_connection).
Start a TLS RedWire listener on an already-bound TCP listener. Mirror
of start_redwire_listener_on for the TLS edge — lets a caller pick
the bound address (e.g. an ephemeral 127.0.0.1:0 port) before serving.