Spec: perhaps replace allow_empty and optional with allow_empty_strings and allow_null
Spec: remove accessor methods since the __get attribute accessor is enough.
Perhaps rename Validation to Constraints or SpecConstraints.
In progress: Put exceptions in their own files and own namespace subdir.
Create proper unit tests according to conventions.
Check and improve markdown documentation and see it if can be generated.
Improve examples.
