Fix some misc. synchronous testing regressions, fixing gh-43:

* Call progress/completion callback immediately if the test-env indicates completion already
* Don't assume that the test-env has an :async slot