feat(ngModel): provide support for custom validation handlers

fix(ng-model): Allow ng-required to work on non-strings.