Split out hosted search so it can be resued