store parents and children on one byte

Signed-off-by: Sébastien Boisvert <sebastien.boisvert.3@ulaval.ca>
add magic number and format version checks

Signed-off-by: Sébastien Boisvert <sebastien.boisvert.3@ulaval.ca>
perform 1 single memory copy for the header

Signed-off-by: Sébastien Boisvert <sebastien.boisvert.3@ulaval.ca>
group memcpy calls on the memory-mapped file

Signed-off-by: Sébastien Boisvert <sebastien.boisvert.3@ulaval.ca>
store sequences using 2 bits per nucleotide

Signed-off-by: Sébastien Boisvert <sebastien.boisvert.3@ulaval.ca>
make one of the methods private

Signed-off-by: Sébastien Boisvert <sebastien.boisvert.3@ulaval.ca>
improved the Makefile

Signed-off-by: Sébastien Boisvert <sebastien.boisvert.3@ulaval.ca>