Pass MessageDescriptorProto#oneof_decl into group add field methods
Pass OneofDescriptors into FieldGenerator constructor
Add :oneof => [oneof_descriptor_name] as generated field option
Generate set_oneof_names on messages with list of oneof field group names
Add oneof? and oneof_name to BaseField
Fix extension generator
Add Message.oneof_fields and Message#clear_oneof_group
Clear all fields in oneof group when setting value of one of those fields