Changed so the sub-commands we rely on to do the real work is specified   in a class attribute 'sub_commands', rather than hard-coded in 'run()'.   This should make it easier to subclass 'install', and also makes it   easier to keep 'run()' and the new 'get_outputs()' consistent. Added 'get_outputs()' in preparation for the 'bdist' command.
Changed so the sub-commands we rely on to do the real work is specified
  in a class attribute 'sub_commands', rather than hard-coded in 'run()'.
  This should make it easier to subclass 'install', and also makes it
  easier to keep 'run()' and the new 'get_outputs()' consistent.
Added 'get_outputs()' in preparation for the 'bdist' command.

pypa/setuptools,pypa/setuptools,pypa/setuptools