toplevel dictionaries should be global (this could be made cleaner and functional, but its temporary anyway)
do a lot of acrobatics to match what Danny does for analyzing locals. I am almost certain Danny's code does the wrong thing here, which winds up (harmlessly?) promoting all function arguments to global-buckets if they are used inside a localExpr