Arcyd: refactor, for clarity 'repo' -> 'repo_name'

There's pretty much one usage of the word 'repo' that means
'repository name' instead of git repository callable.  Rename it to
'repo_name' instead for clarity.

Test Plan:
$ ./precommit.sh
Arcyd: re-use repo callables between cycles

Enable the possibility of caching git info between cycles by re-using
the git callable objects between cycles.

Hoist the creation of the abdt_git.Repo up to abdi_processrepolist and
persist the repo by adding it as a parameter to the functools.partial
call.

Test Plan:
$ ./precommit.sh
phlgitu_ref: add guess_fq_name() for convenience

Make it easier to deal with git refs by supplying a function that takes
any ref and tries to guess the fully-qualified name.  From the
fully-qualified name it's easy to derive the form that's most
convenient at the point of use.

Test Plan:
Add doctests
$ ./precommit.sh
phlgitu_ref: add is_fq() for clarity

Wrap the test for a 'refs/' prefix in a predicate for clarity and to
reduce repetition.

Test Plan:
Add doctests
$ ./precommit.sh
phlgitu_ref: add Name, is_remote(), is_fq()

Continue making it easier to work with git remote names by providing a
vocabulary type for passing them around unambiguously with support for
conversion to convenient forms at point of usage.

This should reduce the amount of care needed when passing git references
around, it's only important to concentrate when the reference name is
actually consumed.

Test Plan:
$ ./precommit.sh
Add and use phlgitu_fixture.CentralisedWithWorkers

Introduce new helper classes in phlgitu_fixture to make it easy to
simulate a workflow where there is one central, canonical repository
with workers contributing and sharing code to and from it.

Update abdt_branch__t and abdt_git__t to use the new helpers.

Test Plan:
Exercised by abdt_branch__t and abdt_git__t
$ ./precommit.sh
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
abdt_git: refactor, rename 'git' -> 'repo'

Replace variables named 'git' with the new standard - 'repo'

Test Plan:
$ ./precommit.sh