pmctl: support a control CLI (WIP)

WIP, please don't bother to review yet.
I prefer to keep code as simple and cohesive as possible, and spreading it out over multiple files isn't worth it unless it grows large enough to need decomposition, or it actually needs calling as a module/js function. That convention dates from when I wasn't using tap/shelljs, and I was trying to make the CLI's js callable to test with mocha, and that particularly requires avoiding any calls to process.exit. strong-pm never used mocha, but I found it useful to call it in tests.