tidy macro just a bit
revive old commented-out test cases as ignored test cases for hygiene
comments only
enrich and rename crate_idents test case
add unit test for match var hygiene
remove unneeded visit_ty methods
remove unneccessary pubs, shorten names
remove misleading and unnecessary underscores
don't expand subexprs of for loop, just re-expand whole thing.

Fixes #15167
added compile-fail test for 15167
make macros hygienic
auto merge of #15184 : jbclements/rust/for-loop-hygiene-etc, r=cmr

It turns out that bindings introduced by 'for' loops were not treated hygienically. The fix for this is to make the 'for' expansion more like a macro; rather than expanding sub-pieces and then assembling them, we need to rewrite the for and then call expand again on the whole thing.

This PR includes a test and the fix.

It also contains a number of other things:
- unit tests for other forms of hygiene (currently ignored)
- a fix for the isaac.rs macro that (it turned out) was relying on capturing
- other miscellaneous cleanup and comments