Update typing.__all__
Add typing.Pattern and typing.BytesPattern
Fix posixpath.join
Auto-translate posixpath to new syntax
Fix posixpath unit tests to use the right modules
Work around missing support for __all__

The problem is that posixpath uses "from genericpath import *" and
this included overload, even though it isn't included in
genericpath.__all__.  Rename overload in genericpath to fix this.
Fix type inference issue

The solution is a bit ugly as I had to work around a type inference
bug -- bound type vars in context are not used to infer types of list
expressions, etc.
Translate functools stubs to new syntax
Work around type checker bug
Update imp stubs
Fix functools stubs
Fix typo in comment
Fix build ordering problem
Add empty placeholder zlib stub
Move incomplete modules to a new directory
Clean up translated code
Clean up translated code
Clean up translated code
Clean up translated code
Minor code cleanup