Improve performance of `tap` and `loop`.
Improve performance of `tap` and `loop`.

Instead of slicing and splicing the jobs array at the start of a `loop`
or `tap` job, we can stash away a reference to the current jobs list and
just replace it with an empty array.

Then, after the respective job has finished, we can push back the stashed
jobs into this new job list array.

This improves performance (because slice and splice are costly operations)
and reduces the number of created objects (because both splice and slice
create new array objects).

deoxxa/dissolve