I did something that might address this.  I am a little bit confused about the function call chains that modify and pass through the **kwargs.  I guess this is common to any code that works with options which can be overridden at multiple levels.