Add and use new ref-caching repo

Speed up queries on refs by introducing a 'smart repo' which can re-use
previous results of queries to remove the need to call out to git.

This should make Arcyd a bit more scalable as the current 'cycle time'
bottleneck is querying git when nothing has changed.

Add phlgitx_refcache.Repo and update abdt_git.Repo and friends to use
it.

Test Plan:
verifed that tests failed when cache not invalidated
$ ./precommit.sh