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