Discover Tcl / Tk functions at run-time by looking in libs loaded by
Tkinter Python module.
Use header excerpts from Tcl / Tk so we don't need an installed Tcl / Tk
to build.
This commit:
* Adds Python 3 module initialization functions. I split out the main init
of each module into a static setup_module function.
* Adds a py3.h which unifies int/long in Python 3 and unicode/bytes in
Python 2. _imagingft.c unfortunately looks a little kludgy after this
because it was already using PyUnicode functions, and I had to mix and
match there manually.
With this commit, the modules all build successfully under Python 3.
What this commit does NOT do is patch all of the uses of PyArg_ParseTuple
and Py_BuildValue, which all need to be checked for proper use of bytes
and unicode codes. It also does not let selftest.py run yet, because there
are probably hundreds of issues to fix in the Python code itself.