procutils: kill process group if proccess is the leader

@colin-scott

A friendly pull request from my BSN identity :)

I am using STS as a convenient framework to write a distributed systems integration test (actually I might be running MCS shortly). Anyway, I got annoyed by the fact that we couldn't clean up processes properly when shell was True. This PR solves the problem by killing the process group instead of the process when if the process to kill is the leader. With popen_filtered, our child processes become the leader of new process groups because of the call to setsid().