Sync to upstream:
- Add timer class to threading.pyi
- Assorted stub updates
- Some fixes to threading
- Add Iterable base class to csv.DictReader.
- Replace some unicode argument defaults with ...
- Use NamedTuple for inspect.ArgSpec and .FullArgSpec.
- Make Future stub resemble reality better.
- Make asyncio more Generator friendly
- Fix default parameter syntax.
- Fix os.environ improperly classified as not mutable for python 2.
- Implement fromhex and maketrans method
- Add missing re module constants for 2.7.
- Add message attribute to class BaseException.
- Fix several python 2 library stub errors.
- Fix class file so it can be used as "with file(...) as f: f.read() # etc.
- Fix min()/max() overloading with key= parameter.
- Fix stubs for concurrent.futures
- Fix type for py2 traceback.format_exc and add to python 3.
- Add stubs for traceback.format_exception.
- Port stub for os.walk from python 3 to 2 and cleanup comment.
- Fix datetime.timedelta() argument types to be floats.
- Add a Travis CI configuration.
- Add stdlib/2.7 to Travis CI tests.
- Test 2and3, 3.3, 3.4.
- Add stubs for some of the most heavily used parts of six.moves
- Revert "Fix min()/max() overloading with key= parameter.
- Fix signature for 2.7/binascii.crc32().
- Fix constructor signatures to 2.7/cPickle.{Pickler,Unpickler}.
- Copy frozenset stubs from 3/builtins.pyi into 2.7/__builtin__.pyi.
- Add 2.7 stubs for dict.fromkeys().
- Fix ast.parse(). The 2nd and 3rd arg are optional.
- Expand stubs for simplejson, unittest, email
- Comment out references to modules without stubs introduced by accident.
- Add html module stubs.
- Add various annotations to complete more of six.moves.