parallel: refactor Run

This makes it considerably faster and more memory efficient.