When creating a content type programmatically, is there a way to add tuples (e.g. pairs) of fields?
The profile2 might fit your bill:


  Profile2 allows for creating multiple profile types, which may be
  assigned to roles via permissions (e.g. a general profile + a customer
  profile)