Added lower triangular, upper triangular, gauss seidel, and cholesky algorithms. Also added further error checking