search module, wip
search pass two
search pass three
Merge branch 'search'

* search:
  search pass three
  search pass two
  search module, wip