functions makeCacheMatrix and cacheSolve for cacheing matrix inversion