bcf_sr_set_samples to use the new --sample convention
vcf: New bcf_get_info_flag() API
Also initialise tid in case user code looks at it

Futher to the initialisations in c68d523699913eacd062bbc19f07796964401d30.
Probably user code shouldn't be looking at these fields, but at present
mpileup does and perhaps other code as well.
Merge pull request #46, CRAM EOF blocks
The default CRAM version is now 2.1. This is now the official release
for supporting EOF blocks and the Java implementation only enforces
them for CRAM 2.1 and above.

Also improved version number checking so an unknown minor version
number isn't fatal (previously 2.1 would cause an error) - 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.
Fixed EOF check. The usual code path had the correct check, but an
empty cram triggered the incorrect code.