Operation SkipUntil

Issue #79

- Written from scratch
- Consulted Rx.NET sources to verify the behavior; there is one difference: I've implemented the OtherObserver such a way that if it is empty, it calls onCompleted() on the client observer and terminates the whole setup, in other words, the client observer won't be held up just to skip all elements of the source Observable (what if infinite stream is in play?!).