Names for case block functions (such as "case block in f") now show the
source location from which they originated. This will make it easier to
diagnose problems like totality warnings coming from case blocks,
staging restriction errors from %runElab, and similar.
When spotting a cycle, need to check that the decreasing argument
is in the same position.
For the moment, this means we can't spot decreasing arguments which
change position across multiple calls - but soundness is more
important!
In particular, this means that type class instances and methods, and names
in where clauses, will have more readable names in error messages.
Needs make relib