VariantReader: fix deallocated memory access

converted string was going out of scope and getting destroyed, but its
internal buffer as returned by c_str() was continuing to be passed into
htslib's bcf_hdr_set_samples(), and eventually getting clobbered by new
memory allocations.

* add tests to for variants with missing genotypes

fixes #122

thanks @droazen and @lh3 for the help debugging this one.
because they've fixed their include guards, which I think could be a sneaky problem for us and I did this as part of my debugging process. Honestly, it's just because it's good to stay up to date.