base for parallel merge

Follows a pull request with the necessary changes to allow for parallel merging of databases.

It still needs the definition of the hashed position in each file as start and end points.

by splitting the biggest file in N (threads), get the sequences of all the 1/Nth positions, for each other file, get the hash of each position in their respective scale and use it to initialize the binary_reader.

arriving in the end position would return false in binary_read.next() . probably each Nth should be a partial file but they could be concatenated or written in parallel to the same file.