Tagging support (continues #260)

@dimirc I've rebased the latest from @tvervest and @juanpasolano from #260.  I've also added auto-tokenization support at your request.  Note that javascript ignores trailing / leading whitespace characters inside data attributes so users will need to use the constant / literal `SPACE` if they want tagging with that character.  You can pass in pipes (so the only invalid character for tagging is `|`) to get multiple tag characters.  This can be seen in the tagging demo I've created in [my fork here](https://github.com/brianfeister/ui-select/blob/tagging-support/examples/demo-tagging.html).

The one outstanding to-do is the `{tagname} (Create New)` UI indicator.  It should be easy but I have to leave for the day right now so figured I would share my progress and maybe someone else can commit that, if not, I'll get it soon.
Feels weird to always have the "new item label" at the begging even if the value you want is in the dropdown. We should consider moving to the end of the list