Propagate a base URI that is based upon the uri from the request

So if a user makes a request to `http://my.hostname/...` instead of `http://localhost:8900`, all the URIs returned by the auth API use `http://my.hostname/...`

That base URI should also get propagated to all the plugins, so they can generate correct URIs if necessary.
As expected, this `request`/`json.loads`/`treq.json_content` pattern is becoming extremely common.  Perhaps consider an issue for factoring this stuff out as well, while we still have half a dozen cases and not half a million ;-)