code: function (options) {
          /**
           * The header Key
           * @type {String}
           * @todo avoid headers with falsy key.
           */
          this.key = _.get(options, 'key') || E;
  
          /**
           * The header value
           * @type {String}
           */
          this.value = _.get(options, 'value') || E;
  
          /**
           * Indicates whether the header was added by internal SDK operations, such as authorizing a request.
           * @type {*|boolean}
           */
          _.has(options, 'system') && (this.system = options.system);
  
          /**
           * Indicates whether the header should be .
           * @type {*|boolean}
           * @todo figure out whether this should be in property.js
           */
          _.has(options, 'disabled') && (this.disabled = options.disabled);
      }
docs: Assigns the given properties to the Header
  
  @param {Object} options
  @todo check for allowed characters in header key-value or store encoded.