Make FieldDefinition class package private
Add support for multi field type