Minor improvements for locations.

There's still a problem: variables such as g.roots in the demo.mz example have a
very poor location because they're added in the context of ELambda. The location
in ELambda is that of the entire function, meaning that these auto-variables are
located on the whole function. We could possibly do better in open_all_rigid,
but I need to think about it.