simplify die command logic, add -v, refactor sig() and broadcast()

Since it was only a `sig('die')` that would cause `norespawn` to be true, we might as well remove `norespawn` and use the value of `cmd`. Also moved the `process.kill()` to after the last fork is killed.