fn path_between_towns( start: SiteId, end: SiteId, sites: &Sites, world: &World, ) -> Option<PathData<(Id<Track>, bool), SiteId>>