Parses the variable arguments and sets fields accordingly.
Fields that weren't already part of the structure are added as needed. Variable arguments should be in the form field name, field type (as a
GType), value(s). The last variable argument should be
the name of the field to set