Code for type-checking closure expressions.
What signature do we expect the closure to have from context?