Implement typeahead #11

This pull request contains:
1. Typeahead implementation (suggestions)
2. Jamie's design changes
3. Filter should be case insensitive (all uppercase)