Implemented unit test engine for xUnit / Arcanist

Summary: This implements a unit test engine for Arcanist that calls upon xUnit to perform tests and regenerate projects when submitting diffs.

Test Plan: Change a file in Tychaia.Threading (even just adding a comment) and run `arc unit`.  It should run only the test projects relevant to the files changed (it can't tell what tests inside the project, but it should only run the Tychaia.Threading tests if you only change Tychaia.Threading).

Reviewers: Sabre070

Reviewed By: Sabre070

Maniphest Tasks: T7

Differential Revision: http://code.redpointsoftware.com.au/D20