Genericised MasterCatalog to an instance of Catalog and built up the
Cache and Catalog infrastructure.  Soon searches will be able to return
a Catalog, which can be automatically updated and saved.