Update to the latest typeshed:
- typing: update 2 to match 3 on Sequence and Container
- builtins: Reversible is redundant when Sequence is already present
- Add __version__ to _ast.pyi.
- add Python 2 stubs for ast, tokenize
- Improve Python 2 stub for abc; _weakrefset stub.
- Update shlex.pyi
- Update random.pyi
- Add abstractproperty.__new__ so it can be used.
- Add object.__new__ so it can be called.
- Update 2.7 built-in set to be the same as PY3 set.
- Swap max() and min() overloads so max(x, y) and min(x, y) work as expected.
- Improve 2.7 stub for tempfile.
- Simplify SystemRandom now it subclasses Random, for 2.7 and 3.
- Add object.__setattr__ for 2.7.
- Simplify PY3 len() spec, no Union with tuple needed.
- Some updates now typing.Container is defined.
- Add cStringIO, cPickle to six.moves. Add six.moves for PY3.