basic search functionality built