Add support for numeric and date and time types

Refactor the Field and FieldType classes and add support for additional numeric and date and time types.