DEV: Add support for allowing empty values.

Adds support for allow_empty as a keyword to a Schematics type.  This makes it possible to require fields for which `None` is a valid value.