pmctl: add a control CLI to pm and supervisor

@sam-github @kraman I merged #14 too hastily, it seems. I've reverted it, re-branched, and cherry-picked the original commit.
I agree, but I find the price worth it.

Fwiw, its rare to need to pipe child output, I just have to do it to figure out what port the process manager is listening on, because I tell it to `--listen=0`, to avoid deps on hard-coded ports.

I removed the pipes to stdout and stderr, and I removed the piping of sl-pm's stderr to parent, since I didn't need it, it now flows directly to stderr which should help.