adding a* search for chains of routes
simplify transportImpl, dont use strings to construct