This change means that subclasses can't reimplement a wacky `.items()` if they choose.  Does this buy us something?  We may even want to duck-type this bit and just check for `.__dict__` on value instead of specifically looking for `ResponseElement`.