initial version of cacheSolve function