Draft: Use DAG package
Use fully featured DAG package instead of our internal implementation
This is proposed as an alternative to !158
Closes #54
This is functional, but still need some additional work:
- OrderedWalk used in SortDepedencies does not return nodes in a derterministic order, consequently ready resources are being reordered in watch mode.
- We need to make sure that it does not introduce performance regressions as we have less control over underlying implementation