better caching for search, better search string functionality