Arbitrary edge lists

Previously, edge lists fed to the `calcAndWrite_Jaccards.cpp` + `clusterJaccsFile.cpp` combo were required to be filled with contiguous, zero-indexed integers.
This small pull request allows for arbitrary integers through the use of a std::map.
The modification comes at a small cost of `32*N` extra bit in RAM (one or two MB at most) and logarithmic lookup.

I did some extra modifications at the same time :
* Harnessed the power of the STL, i.e. removed explicit `new` and `delete` calls.
* Removed unused variables and commented code. 
* Switched error codes from cout to the proper pipeline (`cerr`).

*Since no test suit is provided with the code-base*, I compared the output of this modified version with the output of the current version, for a 0-indexed, contiguous edge list. **There is no difference.**
Custom tests on a non-contiguous, 1-indexed edge list fit with results produced by the python version.