Add digraph.connected_components()
CDCL sat solver for conflict resolution
Avoid backtracking for simple slot conflicts

This should fix almost all "no parents that aren't satisfied
by other packages in this slot"-slot conflicts

Some tests need to be tweaked to adjust to minor behavior changes
intermediate