Consolidate querying of things which we can use git for-each-ref for
Summary: Ref T2230. This cleans up D7442, by using git for-each-ref everywhere we can, in a basically reasonable way.
Test Plan:
In bare and non-bare repositories:
- Ran discovery with bin/repository discover;
- listed branches on /diffusion/X/;
- listed tags on /diffusion/X/;
- listed tags, branches and refs on /diffusion/rXnnnn.
Reviewers: btrahan, avivey
Reviewed By: avivey
CC: aran
Maniphest Tasks: T2230
Differential Revision: https://secure.phabricator.com/D7447