Fill out the structure of the program.

All the validator creation functions in use by the package are stored in a package variable.

Each schema instance contains a slice of validator instances.

Validation returns an error if the data to be validated contains an unsupported type.