Feel free to fix it, note that after working on this area I understand why miguel wants a side by side review for this change. The pipeline is incredible error prone. However I can write a lot of nonsense in commit messages, especially in this area. So I think it is even better that you have to look into the source code and really understand what's going on. 

One more sidenote: I was really impressed how you can emulate async with the yield return statement. I have never seen something like this before and I was blown away (really an amazing idea!)