External Validators

I been using your library for a few months now and I've quite liked it. However, I came across a circumstance where I needed external (functional) validation. I couldn't figure out how to do this with the library as it was (if there's a way, I must have missed the documentation).

This is an extremely bare-bones implementation:
  A selector that is checked against each validated field to determine whether validation is run
  A validation function that takes the value of the field and returns a Boolean result
This is potentially dangerous. If somebody sets a "validityFailureFlag" value of "valid" for instance, we might accidentally overwrite important data. There are a few solutions, none of which I love:
- Do a hasOwnProperty check first, but that would only work if we don't set default value for those flags
- Manually exclude "protected" validity properties, but that's another piece of code that needs to be maintained if the validity object changes
- Get rid of validityFailureFlags (the same information is essentially available in "failedValidatorsNames"). Definitely not a great idea especially for a minor version increment.