Rework autocomplete component so it sucks less

[Closes #51]
So, when I had it set up like:
```javascript
displayKey: this.format,
```
it would complain about `this.get('displayKey')` not being a method, because `this` was bound to a Typeahead `Dataset` object.