Add a rudimentary freevar function for types.  Add some Infer tests that seem to indicate we are generating the WRONG substitution.