copied map-passing-context from contrib.pprint.utilities.  Fixes issue #3.