Use unittest2 TestProgram implementation.

This brings in many fixes made to discovery where previously we were only using
the discovery package or the version in the release of Python that the test
execution was occuring on. (Robert Collins, #1271133)

Change-Id: I6270c8e8949262c01cb3a4e40735077ad6fc1ef2