repeat(rowRep, colRep) {
                rowRep = rowRep || 1;
                colRep = colRep || 1;
                var matrix = new this.constructor[Symbol.species](this.rows * rowRep, this.columns * colRep);
                for (var i = 0; i < rowRep; i++) {
                    for (var j = 0; j < colRep; j++) {
                        matrix.setSubMatrix(this, this.rows * i, this.columns * j);
                    }
                }
                return matrix;
            }
Creates a new matrix that is a repetition of the current matrix. New matrix has rowRep times the number of
rows of the matrix, and colRep times the number of columns of the matrix
@param {number} rowRep - Number of times the rows should be repeated
@param {number} colRep - Number of times the columns should be re
@return {Matrix}
@example
var matrix = new Matrix([[1,2]]);
matrix.repeat(2); // [[1,2],[1,2]]