cleanup sqa tests
fix type checking occurring before required checking on some types
fix handling of None when field is not required
test sqlalchemy date handling