map(callback) {
        const result = [];
        this.forEach((cell, ri, ci) => {
            if (!result[ri]) result[ri] = [];
            result[ri][ci] = callback(cell, ri, ci, this);
        });

        return result;
    }
Creates a 2D array of values by running each cell through a callback.
@param {Range~mapCallback} callback - Function called for each cell in the range.
@returns {Array.<Array.<*>>} The 2D array of return values.