local variables
refactoring
remove unused import
add source location to constraints
prettyprint constraints
prettyprint positions in type errors
refactor type signatures
make environment a record
put fresh variable state into environment
update source locations in tests
keep track of currently defined name

we need this to determine whether the type of an identifier is
all-quantified or not
use setCurrentDeclaration in function declarations
test for mutually recursive locals
some tests; order of types in constraints

to make expected/got error messages better
variable declarations must return their constraints
more tests