Adds a configruation file option that can be overridden by command-line args

Note that this borrows very heavily from http://stackoverflow.com/a/5826167
Only a small portion of this is my own code