Calculate weakly connected components using Disjoint-Set structure

Implemented as a POC while waiting for too long for results from the original CC plugin. Disjoint set (http://en.wikipedia.org/wiki/Disjoint-set_data_structure) is quite effective approach for this purpose. Results are obtained orders of magnitude faster, what matters for large graphs. 

Using Disjoint-set implementation by Nick Watson (http://www.seas.upenn.edu/~nwatson/). There is no mention of licensing terms in the source nor in the webpage. It can be probably negotiated with the author, or the code rewritten from scratch, if necessary.