Add Tipue Search

Successor to #60. Rebased and updated.
I wonder if we could instead template this, eg pass the search index into the context?