disallow ident equality checks when contexts are not equal
rename resolve to mtwt_resolve
ident->name
compare macro tokens hygienically (commented out)
try removing basically dead code in resolve
add hygiene support fns, move them around.

also adds test cases
one-line comment
update librustc to use name comparison in most cases, and mtwt_resolve comparison in others
make ifn macro non-capturing
resolve test case

resolve must ignore syntax context when comparing module names
flip the switch on let renaming
renaming test cases
comments in ast.rs
removed unneccessary SyntaxExpander structs
separate ItemDecorator from ItemDecorator
refactor so tt_fold only requires an ident->ident fn
adding test case to check marking/unmarking
comments only
remove FIXME #2888, now bug is fixed
added FIXME comment