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)

fix(typeahead): modified tests to reflect new behavior

test(typeahead): added test for formatter pipeline
Merge branch 'patch-1' of https://github.com/gcallaghan/bootstrap into patch-1

* 'patch-1' of https://github.com/gcallaghan/bootstrap:
  test(typeahead): added test for formatter pipeline
  fix(typeahead): modified tests to reflect new behavior
  Update underlying model instead of DOM