'Download a requirement, compare its hashes, and return a subclass
of DownloadedReq depending on its state.
:arg req: The InstallRequirement I am based on
:arg argv: The args, starting after the subcommand'

def __init__(self, req, argv, finder):

    self._req = req
    self._argv = argv
    self._finder = finder
    self._temp_path = mkdtemp(prefix='peep-')
    self.__class__ = self._class()
