Major rework of depedency graph, circular dependency exceptions