fixed a small bug with AwaitObservable

Hi,
I had a problem with AwaitObservable: if the resulting workflow gets cancelled the subscribtion to the IObservable stays untouched, possible resulting in a minor memory-leak (did not test this - maybe GC will collect it but I cannot see how)
Anyway this pullrequest contains some small changes that will dispose the subscription on cancellation.

I added test-cases for this as well and fixed some issues I had with NuGet on my system - I hope you are ok with this.