Add test case showing a selection problem This test case highlights a problem in dependency resolution, when a node was evicted in favor of another node, but that this other node constraint should go away because it came in through transitivity of a node which itself has been evicted: since the node is no longer reachable, there's no reason why it should force the selection of a branch that knows nothing about it.
Remove concept of orphan node as it can put the graph into corrupt state This commit removes the detection of orphan nodes, which triggered the removal of unused selectors. The problem is that the selector could be used somewhere else in the graph, even if this node doesn't have any incoming edge. Basically it means that the strategy for "eliminating previous constraints" when a subgraph is elimintated doesn't work. As a consequence some tests are now marked as `@NotYetImplemented`.