simplify and uncomment item-fn-arg hygiene unit test
comments, whitespace, rename NameFinderContext to PatIdentFinder
move RenameList to mtwt, add new_renames abstraction
add PatIdentRenamer
new_mark -> apply_mark, new_rename -> apply_rename
comments only
use PatIdentRenamer for match bindings
comments & test cases for IdentRenamers
hygiene for item fn args

also, introduce fn_decl_arg_bindings and expand_and_rename abstractions
make any_pat! and u64_from_be_bytes_bench_impl! macros hygienic
comments only
added test cases for closure arg hygiene
implement hygiene for ExprFnBlock and ExprProc
auto merge of #15425 : jbclements/rust/hygiene-for-3-kinds-of-args, r=cmr

This pull request adds hygiene for 3 kinds of argument bindings:
- arguments to item fns,
- arguments to `ExprFnBlock`s, and
- arguments to `ExprProc`s

It also adds a bunch of unit tests, fixes a few macro uses to be non-capturing, and has a few cleanup items.

local `make check` succeeds.