11. A computer system for improving search results from a search engine, the system comprising: a processor and memory configured to execute software instructions embodied in the following software components; a user interface component configured to interact with a search user to receive information describing content that the search user wants to find and to deliver results to the search user; a semantic selection component configured to receive a selection of one or more categories that semantically refine the content that the search user wants to find, wherein the selected categories identify content without one or more inherent ambiguities of keywords; a filtering component configured to receive zero or more filters from the search user that further refine the content that the search user wants to find; a library component configured to store in a data store data that describes one or more categories, filters, and other information used by the system; a search engine selection component configured to select a search engine external to the system to which to provide a query and from which to receive one or more search results; a search string generation component configured to generate a search string for delivery to a search engine based on one or more received categories and filters; a search engine interface component configured to communicate with one or more selected search engines to provide the generated search string and receive one or more search results from the search engine for presentation to the user; and a results processing component configured to manage information gathered from search user interaction with the received search results.
11. A computer system for improving search results from a search engine, the system comprising: a processor and memory configured to execute software instructions embodied in the following software components; a user interface component configured to interact with a search user to receive information describing content that the search user wants to find and to deliver results to the search user; a semantic selection component configured to receive a selection of one or more categories that semantically refine the content that the search user wants to find, wherein the selected categories identify content without one or more inherent ambiguities of keywords; a filtering component configured to receive zero or more filters from the search user that further refine the content that the search user wants to find; a library component configured to store in a data store data that describes one or more categories, filters, and other information used by the system; a search engine selection component configured to select a search engine external to the system to which to provide a query and from which to receive one or more search results; a search string generation component configured to generate a search string for delivery to a search engine based on one or more received categories and filters; a search engine interface component configured to communicate with one or more selected search engines to provide the generated search string and receive one or more search results from the search engine for presentation to the user; and a results processing component configured to manage information gathered from search user interaction with the received search results. 17. The system of claim 11 wherein the search string generation component is further configured to assemble a series of variables derived from the received categories and filters into a Boolean string for input to the selected search engine.