Change all worker threads to have signal masks

This diff prevents any thread other than the master thread from
intercepting and handling SIGHUP, SIGUSR1, and SIGTERM signals.
These signals should always be handled by the original thread
so that they can be handled in a consistent manner, instead of
being tossed to a random thread.