- Deleting `ParallelRunnerController` and `ParallelRunnerWorker`.
Replacing them for `Tasks`. The consumer, `EnqueueableEnumerator` will
directly spin up a new producer Task when he is running low on items.
With the enumerator in blocking mode (backtesting), MoveNext was returning true while Current was being set to null.
This was causing a NullReferenceException in SubscriptionSynchronizer.Sync.
This was causing unnecessary data processing with algorithms using universe selection, so we should expect some improvements in speed and memory usage.
Another less common issue fixed in this PR is unexpected price spikes on symbols with splits.
This fix only affects backtesting, no change in live trading.