first cut at local type inference implementation.

all the pieces are here.  just need to use it.
infer type arguments for un-annotated function applications in
synthesizing position.

still need to do the checking case.

also right now there's no nice place to attach the inferred arguments;
need to rethink how metadata works.