Edge
A connection between two nodes.
An edge carries the set of routes that select it. Most edges select on a single route (or none, for an unconditional edge), so the Route/null constructor is the common way to build one; the List form is for the rarer edge that fires on any of several routes.