Catch sigint, and exit, while trying not to be destructive to file handles, See #33
Merge branch 'sigint', Fixes #33