do we need to go through this trouble?

if we reap the child_pid, then the grandchildren should all get assigned ppid=1 and get reaped by init to clean up the zombies...  (reduces to the classic double-fork in order to daemonize).