Add explicit row variable syntax for function types.

A function type's consumption and production may begin with a dot, indicating that it explicitly specifies row variables. This permits writing a type signature for the general 'compose' combinator. Explicit row variables are outermost quantified, same as implicit ones.