Add config reloader

Here is a working config reloader for #6. A more complicated version could be created which makes calls for individual handlers (instead of restarting a supervisor) but given how this will be used I did not think it was worth it.

Unfortunately the tests print out the `logger` application stopped a lot. I think this can be solved with `capture_io` or `capture_log` but it is a pain because `:error_logger_tty_h` links to `:user`. I couldn't get this to work and the `error_logger_tty_h` adding on stop test to pass. @josevalim will probably want to solve this before merging into `elixir`.