VariantBuilder (for initial review)

The way to unset a boolean field is to call one of the *remove() functions, which already exist. An unset boolean field is not present in the record at all.