Comments added to explain the functions used in cachematrix.R