added disjoint-set data structure
all is lightning fast now!

changed kruskal implementation from dfs search for cycles (very slow)
to disjoint-set
moved random seed