implemented the cacheSolve and makeCacheMatrix