Keyword search

* Extract query building from search repository
* Add text search capability