revamping validation system (again)
new validity-checking code-complete but non-functional
basic validation is working again