Make the MENU command toggle the menu instead of repeatedly pushing it.
Add a "reload directory" command to the main menu.

This introduces a new "reload" event available in the gamelist state, and a menu entry to access it. Once the
configuration defaults changes are done, "reload" will also be bound to F5 and joy2 by default.
Replace load() with require() in main
Add LOG functions
Rearrange configuration files and add command line flags.

- Default configuration is now stored in default/
- User configuration is in config/ and is copied to $USER/config on first run
- --log-{debug,info,warning,error} arguments control logging
- --write-user-config and --overwrite-config control config file writing
  - the former controls whether to even attempt writing the config files
  - the latter forces it to even if the files already exist
  - default is (true, false)
- --default-config and --user-config control which config files to load
  - default is (true, true)
Add "Configuration Files" top level entry.

You can now access the user configuration directory from the top level (i.e. go one
level above the root of the media library). Opening one of these files will open
it in emufun.config.editor.
Library cleanup.

Move logging into its own library; separate setting file loading from setting library
loading. Rearrange love.load() to be a bit more readable, with each (ugly) initialization
block now in its own function.
Add support for logging to file.

New command line option --log-file. If set, it will log to a timestamped file in the
emufun directory.
Add debug logging to gamelist
Replace existing prints wih log calls
Cleanup: remove unused arguments from gamelist.lua/push()
Bug fix: don't crash if the user opens the menu with MENU and then closes it with BACK
Make the .love file depend properly on the source files in Makefile.
Process command line flags before and after config file and library loading.
Oops! timer.lua was completely clobbering love.update, meaning the framerate limiter
wasn't working and input.lua worked only because it was loaded after timer.lua.
Add a menu entry to force throw an error.
Make the MENU command turn the screen on if it was off, and only show the menu if it's on.
Remove makefile and replace it with a shell script.