code: function HeaderRW(countrw, keyrw, valrw, options) {
      this.countrw = countrw;
      this.keyrw = keyrw;
      this.valrw = valrw;
      this.maxHeaderCount = options.maxHeaderCount;
      this.maxKeyLength = options.maxKeyLength;
      bufrw.Base.call(this);
  }
docs: TODO: different struct pattern that doesn't realize a temporary list of [key, val] tuples may be better. At the very least, such structure would allow for more precise error reporting.