added method to determine if graph is connected

This (along with the rest of the Graph class) is based on
http://www.python-course.eu/graphs_python.php

However, the is_connected method there doesn't work in python2 because the
vertices_encountered argument doesn't get reset. one solution to this is to use the following:

def is_connected(self,
                 vertices_encountered = None,
                 start_vertex=None):
      if vertices_encountered == None:
          vertices_encountered = set()

This works fine, but I wanted to know which nodes aren't connected to the first node
so that I can add connections in order to count the number of edges that have to be added
to make a connected graph. This was done by adding a __connected_verticies attribute to the
class so that this information persists outside of the method and does not need to be passed
as an argument. This is reset when a new Graph instance is created.
fist commit