Log web requests asynchronously

Instead of spending time logging during a web request (blocking the main
IO loop), add the log message to a multiprocessing queue to be taken
care of by another process. This closes gh-31.

Note: due to the way multiprocessing assumes certain things work, the
use of a `__main__.py` file is incompatible with using the
multiprocessing package. Therefore, to start the web interface we will
now need to use `python -m infertweet.ui.web.main`.