Merge Variant Headers

Merge bcf_hdr_t with merge_variant_headers()
Merge VariantHeader with VariantHeaderBuilder::merge()
Again, throw an exception instead of propagating C error codes