The `When` could be changed to just produce a `Response` rather than the API being split over the `request` and `response` methods.