A new class GraphDomain

This is where I was planning on creating the actual domain. The driver
class could act as the environment and could be more general.