Ah, but you're right, calling atexit() handlers from a signal handler would be bad. Alright, I'll fix that.

I know that ``Log()`` is not async safe, but I considered it a risk worth taking. It is very unlikely that we will get into that code block, so I thought if we do, it's better to try to print the message so that we know what's going on if it happens in the field, rather than just exiting silently. So I'm trading a little risk for more debug info, basically.