Use PHPUnit_TextUI_Command() rather than passthru('phpunit').

Executing PHPUnit programatically definitely has its benefits.  There's
less chance of messing up shell encoding, more programatic access to
things, and less of a requirement on finding the correct phpunit binary.
Build the TestRunner ourselves.

Building the testrunner ourselves gives us access to the result object
rather than just the response code.  This enables us to access more
details about the response directly without having to resort to other
means.
Access code coverage report directly rather than via clover.xml.

This removes our libxml dependency and gives us more meaningful access
to coverage numbers (we can see exactly what we are comparing).
Merge pull request #32 from nubs/phpunit-as-a-library

Access PHPUnit as a library for gathering report