Wrap all HTTP requests in a 5 second timeout

* Web requests should be typically processed in no more than 500ms, and
  ideally under 200ms.
* Even though an error page will be issued to the client, and the
  connection terminated, when a timeout occurs the web process is still
  left to process the request. Subsequent requests may then be routed to
  the same process which will be unable to respond, causing further
  degradation.
* rack-timeout ensures processes don’t remain tied up after 5 seconds of
  inactivity.

https://devcenter.heroku.com/articles/request-timeout