WIP: generics.
Delete trailing whitespace.
Move generics into typing.py. It is good enough now.
Remove ~ from most repr()s except Var. Misc tweaks.
Fix Generic.__getitem__ (repr() was a canary).
Rename TK,TV -> KT,VT to match mypy's typing.py.
Fix most pep8 complaints.