revise findRoutes function to use closures to maintain the scope inside the timeout. still having bugs.
tweak timeout loop, works as long as no more than 3 places are on map. rate limit still a problem.
simplified timeouts so only needed once, and move setTimeout's callback to outside the loop
add a retry on query limit