fix(ngModel): don’t clear the model when an external validator failed

Calling `ctrl.$setValidity()` with a an error key that 
does not belong to a validator in `ctrl.$validator` should
not result in setting the model to `undefined` on the next
input change. This bug was introduced in 1.3.0-beta.12.

Closes #8357
Fixes #8080
@tbosch It'd be nice to have a reject handler here as well in case the previous step rejects/throws. Right now it seems pretty safe, but future additions could introduce cases where an unhandled rejection is possible.