Use os._exit over sys.exit in signal handlers to quit cleanly

As per
http://thushw.blogspot.co.uk/2010/12/python-dont-use-sysexit-inside-signal.html
the use of `sys.exit` inside the signal handlers means that a
`SystemExit` exception is raised
(http://docs.python.org/2/library/sys.html#sys.exit) which can be caught
by try/except blocks that might have been executing at time of signal
handling, resulting in beaver failing to quit
Merge pull request #179 from doismellburning/signal_handler_exit

Use os._exit over sys.exit in signal handlers to quit cleanly