Get URLs and their redirection addresses.

        :param urls: a list of URL addresses
        :returns: an instance of CachedIterable containing given URLs
        and valid location header values of their responses

def get_urls_and_locations(self, urls):
        """Get URLs and their redirection addresses.

        :param urls: a list of URL addresses
        :returns: an instance of CachedIterable containing given URLs
        and valid location header values of their responses
        """
        location_generator = self.get_new_locations(urls)
        initial_cache = list(set(urls))
        return CachedIterable(location_generator, initial_cache)