Push Before/After Callbacks to TestCase

Instead of just being part of specification tests, before/after
callbacks can now happen on unit and other tests.