Update underlying model instead of DOM

In order to trigger the $formatters pipeline this change modifies the underlying model instead of the DOM. This invokes the ngModelController ngModelWatch function which detects the discrepancy and resolves the view.

see [here](https://github.com/angular/angular.js/blob/v1.1.4/src/ng/directive/input.js#L1046-1066)