aggregate(seed, aggregator) {
        let accumulator = seed;
        for (let e of this._iterable) {
            accumulator = aggregator(accumulator, e);
        }
        return accumulator;
    }
Combines the items of a sequence into a single result by starting with a seed accumulator and iteratively
applying an aggregation function to the accumulator and next item to get the next accumulator.
@param {!function(A, T) : A} aggregator Computes the next accumulator value.
@param {A} seed The initial accumulator value.
@returns {A}
@template T, A