Version 2 cachematrix.R