`$isEmpty` fixes

We should only use $isEmpty on $viewValue not for validating models.
I don't really understand why there is this modelValue || viewValue condition. If you are saying, hey take the modelValue and if that isn't there, take the viewValue why not always take the modelValue? Text-based input types by default do not change their type when parsed, so we should be good checking the modeValue.  Unless someone  messes with parsers / formatters, I don't think there's a case where we have a viewValue, but not a modelValue in the validator.
Conundrum is obviously that we say isEmpty should only be for the viewValue, so passing modelValue to it is fishy.

So what about always passing the viewValue to $isEmpty, regardless of modelValue?