b567160e09
Fully concurrent, this improves performance the most.
0eb45b931a
Using WhenAll is one option...
7f2105f4ec
Rearranging tasks saves a little time, but we can still do better.
df6b0dcef1
First refactoring towards concurrency. Tasks are awaited as soon as they are started so this still blocks.