code: function collectUntilVoid(callback) {
      return collect({
          next: function() {
              var value = callback.apply(this, arguments);
              return value == null ? {done: true} : {done: false, value: value};
          }
      });
  }
docs: Collects items from a given callback until one of them is void (null or undefined).
  
  @param {Function} callback Function returning the next item
  
  @return {Array} The collected items as an array