Arcyd: extract branch tests to new file to share

To help further ensure that branch and branchmock have the same
interface and contract, extract the tests from the branch test suite and
start to make it possible for the mock to be tested against the same
tests.

Test Plan: $ ./precommit.sh