adapt tiny_components.hpp to have the same interface as bfs_components.hpp
simplify code
add better checks for forbidden routes