refactored out find_route
added user input validation