Patch #661760: Cygwin auto-import module patch

The attached patch enables shared extension
modules to build cleanly under Cygwin without
moving the static initialization of certain function
pointers (i.e., ones exported from the Python
DLL core) to a module initialization function.

Additionally, this patch fixes the modules that
have been changed in the past to accommodate
Cygwin.
diff --git a/Modules/cPickle.c b/Modules/cPickle.c
index 9412ad9..24a9f13 100644
--- a/Modules/cPickle.c
+++ b/Modules/cPickle.c
@@ -2543,8 +2543,8 @@
     0,					/* tp_hash */
     0,					/* tp_call */
     0,					/* tp_str */
-    0,	/* set below */			/* tp_getattro */
-    0,	/* set below */			/* tp_setattro */
+    PyObject_GenericGetAttr,		/* tp_getattro */
+    PyObject_GenericSetAttr,		/* tp_setattro */
     0,					/* tp_as_buffer */
     Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */
     Picklertype__doc__,			/* tp_doc */
@@ -4808,8 +4808,6 @@
 	PyObject *compatible_formats;
 
 	Picklertype.ob_type = &PyType_Type;
-	Picklertype.tp_getattro = PyObject_GenericGetAttr;
-	Picklertype.tp_setattro = PyObject_GenericSetAttr;
 	Unpicklertype.ob_type = &PyType_Type;
 	PdataType.ob_type = &PyType_Type;