refactor: narrow dependencies of Routes
it doesn't need to know about the Router, just Ourself and Peers.
remove cruft
refactor: move ConnectionMaker and related types
refactor: reduce dependencies of ConnectionMaker
it doesn't need to know about Router, just Ourself and Peers