This implements the _RunAndWait member function and the constructor of the _StructuredTaskCollection, which enables the tests for that class to run. Also adds a throw of a missing_wait exception to the destructor when chores are scheduled and _RunAndWait was not called.
Remaining stuff after this: - Task collection cancelling + IsCancelling function (next MR) - Cancellation token support (requires RE'ing the _CancellationTokenState class, currently in progress)
-- v2: msvcr120: Throw exception in _StructuredTaskCollection_dtor if _RunAndWait was not called. msvcr100: Implement missing_wait exception. msvcr110: Implement _StructuredTaskCollection::_StructuredTaskCollection_ctor. msvcr100: Implement exception passing from chore threads to _RunAndWait. msvcr100: Factor out EXCEPTION_RECORD to exception_ptr conversion. msvcr100: Move exception_ptr functions to a separate file. msvcr100: Implement _StructuredTaskCollection::_RunAndWait.