When I was trying to grok pip's code, it seemed to me that download a resource and extract it were really poorly separated tasks, where it would be useful to have them as clearly separate steps.