commented code in cachematrix.R