If field is required and empty, then set error
add 'dirty' attribute to base type
Merged j2labs master with work from st4lk
Rough draft of some new ideas; mainly having instance methods to do stuff like `validate`, and aggregating errors into a dictionary of fields and a list of errors per field.