changes to the cachematrix.R