add back the search feature. This is not an efficient implementation. We
need to revisit this. #18