cleanup and organization
make sure signals are blocked before forking and unblock after setpgid