Add support for fetching branch lists from Gerrit

Introduces "ExtDistProviders", which represent different backends
to use to fetch branch information for extensions from. Currently
Github and Gerrit are both supported, though Gerrit requires an
external service to generate tarballs.

Bug: 68608
Change-Id: I5c4ca2ee13f256260a7fe9b703af5fbdb902db66
Merge "Add support for fetching branch lists from Gerrit"