base, shell: Be more careful when forwarding control messages.

The "init" command is never forwarded, and non-broadcast messages in
the control channel are only forwarded to their corresponding peer.