Add basic file logging.

This also adds a debugging logger that just logs to an ever expanding vector.

Note: One of the unit tests is now failing because we are checking if things
made it all the way to the debugging logger's list, this isn't a regression
in the code. It will be fixed in a subsequent commit.
Fix LOG_logs_on_higher_log_level.