Run at/background jobs in their own process group

Re-implement job kill using the same approach as job poll.
Add dedicated test battery for job kill.
Merge pull request #821 from matthewrmshin/kill-job-process-group

Run at/background jobs in their own process group