Improved implementation

I found other bugs around the code, but I prefer to report them here rather than send a PR for them:
1) All the benchmarks fail if the output directory hasn't been created. So add this in all *Benchmark class:

      new File(output).getParentFile().mkdir();

2) Sparksee crashes all the times on MacOsX (what OS are you using?). Can we enable/disable implementation by config file?

3) Utils.java:153 I found:

    int community = Integer.valueOf(parts[1].substring(0, parts[1].length()-1)) - 1;

But doesn't work with some input file downloaded from the website you suggested, so I changed it in:

    int community = Integer.valueOf(parts[1]) - 1;

4) In ClusteringBenchmark.java instead of reading the input file from cfg it's wired in the code:

    ./data/community.dat