Allows specificztion and checking of domain-restricted types.

Can now specify strings as having a set of valid values, e.g.
String['YES','NO'], or integers as having a range, e.g. Integer[0,...,100].
The WrapperWorkflow will provide an extra layer to check inputs.