Generic CRUD Validators

The CRUD operations that modify the DB (insert, update, and the deletes) will now run their respective validation methods. These methods are in their own validators trait, and currently default to no validation at all (they pass by default). To add custom validation to an entity model, we simply override the validator for the appropriate CRUD op, and the Queriable trait ops do the rest. See workflow's deleteValidator as an example.