Prevent infinite loop:
Prevent infinite loop:

The method `_log` calls `_log_fatal` if it can't open the file.
Then `_log_fatal` calls `_log`. If that can't open the file, it
will call `_log_fatal`. A pattern is forming...

We need to tie up the loose end. If we can't open the file as part
of a file read, we can't write the error to the file, so we just
die.

We also add a check for the `close` function.

xsawyerx/pakket,xsawyerx/pakket,xsawyerx/pkt