* Fix an invalid type variable name generation in the type inference engine.
Merge remote-tracking branch 'upstream/master'

Conflicts:
	src/AST.ml
	src/common/unionFind.ml
	src/inference/constraintGeneration.ml
	src/inference/externalizeTypes.ml
	src/inference/inferTypes.ml
	test/inference/bad/coreml_value_restriction.mle
	test/inference/good/coreml_adt.mle
	test/inference/good/coreml_forall.mle
	test/inference/good/coreml_pair.mle
	test/inference/good/coreml_polymorphic_recursion.mle
	test/inference/good/typeclass_canonical_typing_context_in_scheme.mle
	test/inference/good/typeclass_infer_canonical.mle
	test/inference/good/typeclass_needs_constraint_hoisting.mle
	test/inference/good/typeclass_polymorphic_recursion.mle
	test/inference/good/typeclass_predicate_annotations.mle
	test/inference/good/typeclass_predicate_annotations_priority.mle