Signal handling checkpoints and Mutex.lock

All the POSIX exec()s are async-signal-safe except execvp() [edit] and execlp().