Added feature where (ACCESS <name> <system-global-environment>) is
unsyntaxed as <name> if UNSYNTAXER:ELIDE-GLOBAL-ACCESSES? is non-false
and there are no shadowing bindings.
This is slightly imperfect because the unsyntaxer cant know about
names bound in the scode that surrounds the expression that was
initially passed to UNSYNTAX. Perhaps these names should be a
parameter. Debuggers could then augment the bound names with names
from the environment (or perhaps unsyntaxing should be done with
reference to an environment).
The feature is currently OFF by default, but I envision it being
necessary for sanity as more and more IEEE/R4RS operators are
integrated as global accesses (so that the compiler knows that it can
optimize them).