The default CRAM version is now 2.1. Also improved version number
checking so an unknown minor version number isn't fatal - as it's
minor we should be able to read it without understanding the exact
change and still get a useful result.

Changed the over-allocation amount of the SAM header block to be
MIN(length*1.5, 10000) instead of MAX(length*2, 10000).  The Java code
didn't allocate such vast tracks, so neither should I.


git-svn-id: svn://svn.code.sf.net/p/staden/code/io_lib@3572 ba6f2710-ca9f-427c-89d3-5bf716dbc8e1
Fixed EOF check. The usual code path had the correct check, but an
empty cram triggered the incorrect code.


git-svn-id: svn://svn.code.sf.net/p/staden/code/io_lib@3573 ba6f2710-ca9f-427c-89d3-5bf716dbc8e1
First test implementation of the rANS encoder, to replace arithmetic
coding? (See https://github.com/rygorous/ryg_rans)


git-svn-id: svn://svn.code.sf.net/p/staden/code/io_lib@3574 ba6f2710-ca9f-427c-89d3-5bf716dbc8e1
Bug fix to compression level -6 and above.

Improved the zlib usage when the default compression method is
ARITH/RANS.


git-svn-id: svn://svn.code.sf.net/p/staden/code/io_lib@3575 ba6f2710-ca9f-427c-89d3-5bf716dbc8e1