bgzf: Support for reading gzip-compressed files.

This may have the undesired consequence of htslib
silently working with gzip files as if they were
bgzf files. Before an error was thrown, no it
may go unnoticed. This has been addressed in VCF
indexing but there may be other cases. Time will
show...
Minor comment change
bgzf: Support for FCOMMENT gzip header
bgzf: Support the remaining optional GZIP header fields
bcf_sr: New missed_reg_handler and bcf_sr_regions_flush() function
vcf: New bcf_dup() function
Changed the initial CRAM EOF value to be 1 (expected EOF) and then
explicitly set it to 0 at the start of each slice decode.

This resolves Samtools issue #150 where "samtools view -H" would
return EOF as 0 and yield an error.
idx: Don't create broken .tbi or .csi when file unsorted (VCF/BCF/BAM)