anchor.diff:      (!this.paused ? this._handler = n : this._backhandler = n);
       (this.paused ? this.resume() : this.push());
     }
  -
  +  
  +  void onDrain(void n()){
  +	  this._drain = n;
  +  }
  +  
     void disconnect(){
       this._handler = this._backhandler = null;
     }
  
positive.code:     this.end();
      this.done.then((n){
        this._streams.free();
        this._handler = this._backhandler = null;
      });
    }
    
  
negative.code:   final Completer _done = new Completer();
    bool _shouldShutDown = false;
    Function _handler;
    Function _drain;
    Function _backhandler;
    
    static create() => new Streamable();
  