cacheSolve added, comments improved