Perform Gaussian elimination (#684)

Perform Gaussian elimination (#684)

Use row operations to reduce matrix to row echelon form.