implementing makeCacheMatrix