A Field is a simple data type that helps capture and validate form data better.
The left side of a field represents a function that takes in a value of arbitrary type,
validates it and returns a ValidationResult.
The ValidationResult can contain the value of the field if the validation Passed, or
an error if the validation Failed
Validate a Field and get a ValidationResult
Validate a List of Fields and get a List of ValidationResult
Check if all Fields in the list are valid
Add Additional validations to a Field
Type that helps capture and validate form data better