'Find distribution best matching `req` and usable on `working_set`
This calls the ``find(req)`` method of the `working_set` to see if a
suitable distribution is already active.  (This may raise
``VersionConflict`` if an unsuitable version of the project is already
active in the specified `working_set`.)  If a suitable distribution
isn\'t active, this method returns the newest distribution in the
environment that meets the ``Requirement`` in `req`.  If no suitable
distribution is found, and `installer` is supplied, then the result of
calling the environment\'s ``obtain(req, installer)`` method will be
returned.'

def best_match(self, req, working_set, installer=None):

    dist = working_set.find(req)
    if (dist is not None):
        return dist
    for dist in self[req.key]:
        if (dist in req):
            return dist
    return self.obtain(req, installer)
