Running multiple steps in parallel actually works

The internals are much saner now too.