cachematrix.R added