IObservable/IObserver, Extensions, Reactive packages.

IMonad is now an abstract class that extends IEnumerable<A>,
IObservable<A>, IObserver<A>. So its an observer and observable at the
same time. Added new Playground to test observable and observer with
identity. Also added some extensions, that make every monad thread
safetyness. Added extensions for calling methods and propertys on the
underlying class of a monad, in a very easy, threadsafe and functional
way. Im Thinking about to implement INotifyPropertyChanged for the
abstract class IMonad too.