There's a whole bunch of tools groping awkardly in a single direction here:
1. Give a graph to the computer
2. The computer makes the graph a reality
The good ol' fashioned make tool does exactly this and, in the spirit of Unix, pretty much nothing else.The problem is in determining whether the dependencies of a node in the graph are satisfied. Make does this by comparing file times. All the other 'graph resolving systems' you mentioned do something different. Obviously the solution is to abstract the dependency test from the graph itself. Then all these systems become pretty much the same.