Rewrite traject_consumer in terms of request and model. This
because it turns out to be useful to get request in the
registered model functions anyway.