Fixed 'name is main' demo in hac module to align with new return values
Simplified complete graph contruction, commented out well intentioned but buggy code, changed some default behavior (with divisive=False in mind)
calls to nx.connected_components were impeding performance. Using nx.has_path to determine whether or not we need to call nx.connected_components (for divisive strategy)
Add nx.has_path trick for agglomerative strategy