`Invoke(...)` extension method for async await (named `Awaiting(..)`)

usage:

    foo
         .Awaiting(async x => await x.DoSomething())
         .ShouldThrow<InvalidOperationException>();