Returns the target of an outgoing edge with the given name (if any).
Node? operator [](String edgeName) => edges.firstWhereOrNull((e) => e.name == edgeName)?.target;