Start work on semantic analysis of namedtuples
Add test case
Fixes to namedtuple semantic analysis error handling
Update error messages
Implement basic type checking of named tuples
Fix test cases
Workaround to fix test cases
Minor refactoring
More namedtuple refactoring
Implement basic type checking of namedtuple attributes

The attributes are not read-only yet.
Construct namedtuple __init__  methods
Update docstring
Clean up code to pass type checking
Fix return type of namedtuple constructor

Return a tuple type instead of an instance type.
Add collections.namedtuple to stubs
Add namedtuple to Python 2 stubs
Add count and index to tuple stubs
Add namedtuple test case
Add NamedTuple to typing

This is a variant of namedtuple that allows defining
item types in addition to their names.
Implement semantic analysis of NamedTuple(...)