Search with typeahead

Switched everything over to use Typeahead.js and Bloodhound.js. Tried to keep proper formatting intact, but a second look would be appreciated. Will post screenshots as well. 
Simpler to structure like this:

```python
friend_dicts = []
if 'friends' in result_types:
    user = view_helpers.get_current_user()
    if user:
        # rest of code
```

Then you don't get the repetition of `friend_dicts = []`.