Fix bug in extraction of value type from funcvalnodes.
Add support for basic type checking and add support for primitive types in type signatures.
Add typechecking for function return types.

Compares the specified return type of a fn definition and the inferred type of its returned line.
Add (pharen) line numbers to nodes and type error messages.
Rename ann to poly-ann.

This better reflects the fact that it creates an *additional, polymorphic* annotation rather than replacing the function's existing type signature.
Default to one of the value nodes if expecting literal and getting a non-delimiter token.
Instantiate ->typesig for plambdas.
Remove redundant implementation of IPharenSeq from PharenList.

Not needed because PharenList extends FastSeq, which itself implements IPharenSeq.
Implement scoring of subclass chains during type sig matching.