Autosetuptools

The autosetuptools branch fixes wheel installs compared to the previous PR.

This is a rough PR for discussion.

This version of pip uses its own copy of pkg_resources and installs setuptools when it needs it. It doesn't necessarily play nice with the install command and it probably fetches the first package that needed setuptools twice.

I think some of the bdist_wheel "needs setuptools to --use-wheel" checks (no longer the case after this patch) were mixed up with the "needs setuptools to build wheels" check that will be necessary.

I tried the distutils pkg_resources emulation but my virtualenvs tend to use enough pkg_resources features that I need the setuptools version.