public Aggregate(AggregateObservable <TSource> parent, IObserver <TSource> observer, IDisposable cancel) :
     base(observer, cancel)
 {
     this.parent    = parent;
     this.seenValue = false;
 }
 public Aggregate(AggregateObservable <TSource, TAccumulate> parent, IObserver <TAccumulate> observer, IDisposable cancel) : base(observer, cancel)
 {
     this.parent       = parent;
     this.accumulation = parent.seed;
 }