1. A system for providing a set of refinement categories for a set of search results generated in response to a search query, comprising: a search engine system for generating a plurality of search results in response to a query; a category identifier system for analyzing each search result and identifies at least one category from a hierarchy of categories for each search result, thereby providing a list of identified categories; a ranking system for ranking each identified category in descending order based on a number of times the category was identified for the plurality of search results; a selection system for selecting an initial set of refinement categories based on the rank-ordering of the identified categories, wherein the initial set of refinement categories contains a plurality of categories, and wherein the number of categories in the initial set of refinement categories is less than the total number of categories identified in the identifying step, wherein the selection system eliminates all categories from the initial set of refinement categories that meet an elimination criterion, wherein the eliminating generates a resulting set of refinement categories, wherein the eliminating further includes eliminating all categories from the initial set of refinement categories that have a hierarchical ancestor in the initial set of refinement categories, wherein, after the eliminating step, generating a final set of refinement categories by adding a new category for each category eliminated during the eliminating step to the resulting set of refinement categories, and wherein the new category is a next highest-ranking category in the rank-ordering of the identified categories that was not in the initial set of refinement categories based on the rank-ordering of the identified categories; a supplemental category system for appending a supplementary category to the final set of refinement categories, wherein the supplementary category provides access to identified categories not in the final set of refinement categories, and wherein selection of the supplementary category causes a new search to be executed using the same search query but with the final set of refinement categories and their children and grandchildren excluded and removing all the children and grandchildren from a current category list; and a display system for displaying the final set of refinement categories and the supplementary category.