An easier way to handle old-style metrics files
Merge pull request #33 from samtools/jr_read_old_metrics

An easier way to handle old-style metrics files
Initial commit supporting MarkDuplicatesWithMateCigar

These changes were from before the Picard-public/htsjdk split. This branch is synchronous with the branch of the same name in Picard-public
Fixing up DiskBackedQueue from htsjdk split
More DiskBackedQueue fixup. Should have been in last commit
Changed DiskBackedQueue to implement Queue interface, not iterator

Still lots of work to do. Just a commit before going home on 5/29
Further changes to DiskBackedQueue

Alterations to implement Queue interface complete
pending unit testing and usage (likely will find bugs)
Initial changes to DiskBackedQueueTest

to reflect previous change in DiskBackedQueue to implement Queue,
store file records a little more simply
Further changes to the DiskBackedQueue. Added a flag to SAMRecord

DiskBackedQueue now appropriately implements a queue. Added
improvements and additional cases to the unit test. Unit tests
pass.

Added a TemporaryDuplicateMarkedFlag to SAMRecord. This is set
temporarily during Picard-public MarkDuplicatesWithMateCigar to
indicate that a record is available for emission from the algorithm.
For use with in-memory records that are never spilled to disk.
Finished work on DiskBackedQueue and its unit test
Removed the temporaryDuplicateMarkingFlag from SAMRecord.

Messing with SAMRecord was a bad design choice.