Ensure that we add things to the mux before removing them

As $all_done fires as soon as the number of ->begin calls is equal to
the number of ->end calls, it is important in non-parallel builds that
we top off the queue before removing from it -- otherwise, the test run
will complte prematurely after the first test.