feat(ngModel): bind to single property instead of entire object

In cases when we don't want the ngModel to be bind to the whole object but just to a property, we could specify it at the repeat attribute. 

Something like this:
```person.email as person in people```

I'm doing some refactoring at this PR but the important part of the code is at the link function uf uiSelect directive, where a parser and formatter is added (to have 2 way binding)

PD: For static data seams to be working fine. I haven't check yet how could this behave for remote data. 

Demo [plunker](http://plnkr.co/edit/ZOKXR0FkSvmkSpQV9CXb?p=preview)

Closes https://github.com/angular-ui/ui-select/issues/68