cfg: make code more Pythonic

Use `{a: b}` for creating a dict
cfg_test: slightly tweak test case

make sure it deletes the loop even when the first x is referenced
cfg: add a comment to dead_loop_elimination
cfg_test: test consecutive unrelated dead loops

The code in dead_loop_elimination can, in principle, delete two loops
at once. Let's test this and expose a bug ;)
dead_loop_elimination: make it recursive

and test it. Has the same bug as prior commit.