Updated use of FD to better handle File changes

Every meassage now updates the log files independently instead of using
a single fd for the log. This so fixes #2 allowing logging to continue
irregradless of file operations outside of the program.

This opens a file per message log event. This allows the underlying file to change per message without disrupting logging.