Make DecisionGraph more generic