makeCacheMatrix and cacheSolve functions with comments