Tagging support

As [discussed earlier](https://github.com/angular-ui/ui-select/pull/63#issuecomment-57956185), I've re-applied the changed needed for tagging support on the latest master.

**Note:** my work is based on a fork of @juanpasolano's fork, so it also includes his patches in #198
We could try checking the return value of the factoryFn and if its `false` we could prevent the creation of the item.