Update cachematrix.R

However, because of the limitation of Solve, it doesnt handle matrix that is non-square