Issue #11016: Don't define macros and constants that are already set by pyport.h
Misc improvements to collections.deque()

* Clarified comment on the impact of BLOCKLEN on deque_index
  (with a power-of-two, the division and modulo
   computations are done with a right-shift and bitwise-and).

* Clarified comment on the overflow check to note that
  it is general and not just applicable the 64-bit builds.

* In deque._rotate(), the "deque->" indirections are
  factored-out of the loop (loop invariant code motion),
  leaving the code cleaner looking and slightly faster.

* In deque._rotate(), replaced the memcpy() with an
  equivalent loop.  That saved the memcpy setup time
  and allowed the pointers to move in their natural
  leftward and rightward directions.

See comparative timings at:  http://pastebin.com/p0RJnT5N
merge
Fix test for GCC 3.1+ but not strict ANSI C
Fix test for GCC 3.1+ but not strict ANSI C
Issue #18277: Document quirks of multiprocessing queue.
Issue #18277: Merge.
Issue #15818: Typo in docs.
Issue #15818: Merge.
Clarify note and fix typo.
Merge.
Fix typo.
Merge.
Issue #9566: _io: Use Py_SAFE_DOWNCAST for fix a compiler warning on Windows x64
Issue #9566: zlib: Explicit cast to unsigned int to fix a compiler warning on Windows x64
Issue #9566: _winapi.WriteFile() now truncates length to DWORD_MAX (4294967295)
Issue #18164: Clarify the embedding docs regarding link options.
Issue #18164: merge from 3.3
Issue #9566: Fix a compiler warning in tupleiter_setstate() on Windows x64
Issue #9566: Fix a compiler warning on Windows x64