Move some functionality on graphs to a utility header
Implement approximation of Kelly-width based on elimination ordering.

This algorithm basically is a directed version of the minor-min-width algorithm
that we use to compute the upperbound on tree-width.