Jc cram changes

This pull request includes a rebase of Vadim's cram code base as well as all of the necessary changes for the htsjdk to support CRAM input and output.
Why did this become ```log.debug```?  For example, a tool to create index may want progress on the number of records processed.  Perhaps allow this to be togglable?