make JobTest source mocking more powerful

Summingbird testing needs this since the mock sources are not known in advance.

closes #576