Simplify how process groups are created when forking tests and fit wait calls

The test's process group is now created immediately (before fork_monitor), and
then fork_monitor's timer and monitor processes join the parent's process
group. This lets us remove some IPC since there's no longer a race condition.
Finally, we also remove WIFSTOPPED cases from our wait(2) handling, since it
can never occur with the options we've specified.