We are adding utilties to support Picard's MarkDuplicatesWithMateCigar, but put them here as they may be generally useful to folks.

DiskBackedQueue: a queue for SAMRecords that stores the records in
memory until a limit is reached, and then writes them to disk.  The
queue returns records only when the consumer has set the given record
as examined.

DuplicateScoringStrategy: a class to help with picking a non-duplicate
from a set of candidate duplicates.

SAMRecordSetBuilder: many improvements to support more complex SAMRecord
creation.

SAMUtil: adding a function to give the cannonical read name, defined as the
concatenation of the read group identifier and the read name.