Revamp ravenexec, support killing process tree on linux
Revamp ravenexec, support killing process tree on linux

For linux:
Use the subreaper to reassign the parent ID of orphaned processes on
linux.  The process tree kill is implemented by walking the /proc
filesystem and checking the parent pid of every process, reaping those
that match the top process.

also:
1) use fork instead of vfork (an attempt to fix mystery freeze during
long builds on all platforms)
2) move signal handlers after fork
3) Add error message if execve fails
4) refactor kill_process_tree()
5) save top process pid in static variable to avoid calling it several
times

jrmarino/ravenadm,jrmarino/ravenadm,jrmarino/ravenadm