codeintel: Cache github authz responses
Created by: efritz
Previously, we would take the user-supplied github token on every LSIF upload and hit the GitHub API directly to see if the user has authorship over the target repo.
This PR adds a caching layer (via rcache, in Redis) for those responses for a particular github token/repository pair. Before serializing into the redis cache, we take a sum of the data so that we do not store user github tokens anywhere in our stack.
This should reduce the number of requests we make to github, especially when we have users (like ourselves) with high commit frequency and lots of upload jobs launching in quick sequence.