pass *args and **kwargs through mappers

Cause mappers to pass through additional arguments more consistently. This facilitates the subclassing of mappers. For example, one can implement a subclass of stringify which automatically indents code. This requires the current indentation level to be passed through the mapper.