functional makeCacheMatrix and cacheSolve with comments