removed usage of TaskStatus
transition to purely Task-based futures
migrated to ManualResetEventSlim