Merge Variant Headers

Merge bcf_hdr_t with merge_variant_headers()
Merge VariantHeader with VariantHeaderBuilder::merge()
Adding move semantics should be a separate ticket too, I think -- no need to address it in this branch.