Add syntax and type checker for GV.

Type checking GV is a good deal more exciting than type checking
CP---the presence of application, and the lack of type annotations on
channels in with..connect..to means that I effectively implemented type
inference, not just type checking.  I'm also not convinced that the
checking for select is right yet, but doing it "better" requires row
variables, which I am putting off for now.