code and commets for makeCacheMatrix and cacheSolve