Combined a bunch of Form validation methods into _handleFieldEvent

* Resolved conflict between data (individual input) and field level data (potentially multiple inputs) by storing and using field-level view of raw data for validation hasChanged checks
* Added a sentinel check to ensure validation is always performed on first interaction, even if the value hasn't technically changed