add a general fetching protocol and tool for getting information from the web and building a ProductList object