Add ginkgo / gomega / Mr. T submodules
Update stretchr/testify

Now with even more testing.T interface awesome thanks to @onsi
Update testhelpers to use mr.T
Rewrite all tests as Ginkgo tests
Update AssertPanic to take a *testing.T
Fix tests that relied on global state

Now that we're running our tests with ginkgo, it's apparent that running
our tests in a random order will consistently cause some tests to fail
because they had relied on the previous behavior of earlier tests
setting up some global state. For the most part, this is the pointer to
a singleton config object, but it's also a few other tests.

Interestingly enough, one of the TestRequirements tests was written in
such a way that it would always pass so long as another successful
command ran before it.

Closes #77

[#64883944]