Redo the Disconnectivity graph algorithm

The new method is much faster for larger graphs.  The algorithm starts
from a completely disconnected graph and adds transition states one at a
time, starting from the lowest energy transition state.  Connectivity is
determined solely through labeling minima based on which cluster it's in
(labels are called colors).  If a new transition state connects two
previously disconnected clusters, the clusters are joined to make one
single cluster.  As the transition states are added (sorted in energy)
the energy levels are reached one at a time.  At each level, the state
of the connectivity of the graph is saved in tree graphs.
clean up and add a few more features to new d-graph method
clean up and fix some bugs in disconnectivity graph