The first commit improves documentation on setup_clean_chain which is misunderstood quite frequently. Most importantly it fixes the TestShell docs which are simply incorrect. The second commit removes the instances of setup_clean_clain in functional tests where it is not changing the default.
Backport of core#21042.