Reuse bcf_get_format_float/_char/_int32() buffers
Reuse bcf_get_format_float/_char/_int32() buffers

These functions work by reallocating &buf/&max_buf (if necessary) each
time they're called, and returning the number of buffer items used.
Previous code called them with NULL/0 the first time but <dangling-ptr>/0
on subsequent calls, as after each call the pointer was freed but not set
to NULL.

Fix the way the API is used by tracking the buffers' maximum sizes and
reusing them throughout vcfrow_get_format().

Fixes #76 and fixes #82.

Ensembl/Bio-HTS,Ensembl/Bio-HTS,Ensembl/Bio-HTS