Move methods from semantic info to the chain.
No need for the decl collector to hold onto a semantic info.
No need to have a pointer to the default case clause in a switch statement.
Point ast nodes back at their parents.
Expose file names off of AST nodes.
Now that AST nodes expose the filename they came from, we can simplify many APIs that used to take both.
Simplifying creation of diagnostics for ast nodes or decls.
No need for the binder to hold onto a specific semantic info anymore.
No need for the resolver to hold onto a semantic info.
Stop exposing individual semantic infos.

Inidivudal SemanticInfos are not an implementation detail of the
semantic info chain.
Rename fields.
Decl collection context has no need to track a file name.
With all the recent refactorings, there is now no need for an individual binder per file.
Remove rundundancy with the RootPullDecl.
Beginnings of compiler conformance suite
Specialize constraint before using them in type argument inferance
Fix crash: Cannot read property 'minChar' of undefined
Fix crash: Cannot read property 'kind' of undefined
Remove unused type.
     Remove AstPath.

     There is no need for it anymore now that we have parent pointers in the AST.