More settings changes:

* Write out a settings file if one doesn't exist.
* Default volume setting
Cleanup most file handling.

* Check that we were able to open things
* Log a few more things like opening of files, and the fact that we're going to try opening/creating files
Updates to settings code

* Print mode in debug prints
* Fix crash in reading mode from config file