Paralell graph generation

Hi Pankaj,

I improved to parallel graph generation and provided some benchmark.

The question is: how should we optimize this. I think the gain from parallel collections here is not very high on a 2 cores machine, because sampling random subset takes longer and we have to synchronize added edges in undirected graph case. However, on more cores it should be beneficial. Having two versions 

So what is actually our targeted machine?
I can benchmark it on my 2cores laptop or on a server machine with 24 cores.