OnCompleted should capture the current ExecutionContext and use it to run the continuation.
No requirements are placed on how the continuation is invoked.
OnCompleted should capture the current scheduling context (the SynchronizationContext)
and use it when queueing the continuation for execution. If this flag is not set, the implementation
may choose to execute the continuation in an arbitrary location.