This wrapper is easier to use when it just directly translates all calls, and instead should not attempt to mirror the code reductions which are likely occurring in the upper implementation.  Much more predictable this way (and easy to use in unit tests then).