implemet clause 9 as in the paper
let-polymorphism for row variables:

- when introducing a function to the environment, quantify all free row
  variables
- when retrieving a function from the environment, make fresh row
  variables for all bound row variables
record expressions must be a fixed row
add TODO
add some tests
makeNiceAutoTypeVariables for row error messages
testcase
remove dead code
specified record types must have variable rows