Fix various bugs in closures.

And in attempting to use closures when support is not compiled in.
Merge branch '1.4-stable'