TokenFetcher should not mutate existing tokens.
Don't provide a Transport interface but provide a http.RoundTripper implementation.