When it doubt, use more layers. We are going to make an otherwise useless object, but one designed to be very self documenting. It will only be a few lines long and contains stubs for the "public" functions every backend requires. The real object subclasses from public mock up. In this example, |