2to3: Use absolute imports.

The new import `absolute_import` is added the `from __future__ import`
statement and The 2to3 `import` fixer is run to make the imports
compatible. There are several things that need to be dealt with to make
this work.

1) Files meant to be run as scripts run in a different environment than
files imported as part of a package, and so changes to those files need
to be skipped. The affected script files are:

    * all setup.py files
    * numpy/core/code_generators/generate_umath.py
    * numpy/core/code_generators/generate_numpy_api.py
    * numpy/core/code_generators/generate_ufunc_api.py

2) Some imported modules are not available as they are created during
the build process and consequently 2to3 is unable to handle them
correctly. Files that import those modules need a bit of extra work.
The affected files are:

    * core/__init__.py,
    * core/numeric.py,
    * core/_internal.py,
    * core/arrayprint.py,
    * core/fromnumeric.py,
    * numpy/__init__.py,
    * lib/npyio.py,
    * lib/function_base.py,
    * fft/fftpack.py,
    * random/__init__.py

Closes #3172
2to3: Add `from __future__ import ...` to new files.

The new files that came in when doc/sphinxext/numpydoc was restructured
as a package with test stubs did not have `from __future__ import ...`.
This fixes that omission.
2to3: Add `from __future__ import ...` to some files that were missed.

With the exception of numpy/distutils/tests/test_exec_command.py, all
of these files are script files in tools/osxbuild and tools/win32build.
The import in the  script files omits `absolute_import` as they are
not part of a package.
Merge pull request #3178 from charris/2to3-apply-import-fixer

2to3 apply import fixer