First types + class for infering types + some coercing + typeenv that will probably become our lattice and first patters for inferencing types