I suppose I'm somewhat unclear on what the limitations were, or how they've been fixed, even after looking through the commit history.

1) At least at the moment, I'm using that method as one of the main hooks for the virtualenv stuff.
2) I don't know if the limitations you're mentioning are the same ones that were alluded to in the commit message for 0170cebb - disqualifying providers if the binary doesn't exist at the start of catalog compilation. If they are, then I suppose this can be reworked now. But it's going to be a common case that the pip binary we're using doesn't exist at the beginning of evaluation.