Framework for dealing with Graphs