Add "system tests" to precommit

Add the existing 'exercise_arcyon.sh' script to the suite of things to
run before committing.

Move 'runtime_tests.sh' -> 'unit_tests.sh'

More 'progress' output from tests.

Test Plan: $ ./precommit.sh
Manually introduce errors to make sure they're reported by
system_tests.sh
phlsys_makeconduit: refactor to reduce fn size

Refactor a little to reduce the size of the
'get_uri_user_cert_explanation' function.

Test Plan: $ ./precommit.sh
phlsys_makeconduit: fix - always check uri

Fix make_conduit to always check and fix up the supplied uri.

Test Plan:
'arcyon show-config' and supply uri, user, cert but the uri is
incomplete.
add system test for Arcyd

Do some basic smoke testing for Arcyd - create, update and land a
trivial review.

Add a new command to Arcyd 'multi-once' to support the test script.

Add the system test to the 'system_tests.sh' script.

Test Plan: $ ./precommit.sh
system tests: exercise 'help' of commands

Smoke test the 'arcyon' and 'arcyd' commands by simply asking them to
print help.

Exercise 'arcyon paste'

Test Plan: $ ./precommit.sh
Tidy abdi_processrepo: apply PEP8

Test Plan: $ ./precommit.sh
Tidy abdi_processrepo: remove unused functions

Test Plan: $ ./precommit.sh
Tidy abdi_processrepo: remove unused global, TODO

Test Plan: $ ./precommit.sh
Test python file read/write semantics

Add testbed scripts to exercise the 'open' command and see if it behaves
the way we want in order to support sharing status files between Arcyd
and a websever.

Looks like it does what we want - readers only see the file in coherent
states, the writer doesn't appear to be starved and unable to write.

Test Plan: $ ./precommit.sh
Fix typo: abdt_branchmock__t test name
Arcyd: introduce 'reporter' abstraction

Pave the way for reporting repo-specific events and status by
introducing a reporter abstraction which will write to the touchfiles.

Later we'll extend the touchfiles to contain status information and add
a new command to Arcyd for rendering per-repo status HTML

Test Plan: $ ./precommit.sh
WIP