Mark dup alternative ii - FOR REVIEW ONLY

This is the latest iteration of my work on mark duplicates and adds two new mark duplicates algorithms to samtools.  The first algorithm is a name sorted mark duplicates algorithm and the second a coordinate sorted algorithm which uses a novel data structure to reduce memory usage compared to the previous iteration.