properly inherit all super classes of an Objective-C object.
Not only is this semantically correct, but it also enables mixins to
work with class clusters (for example, NSCFString has all of the NSString
mixins available by virtue of it being a subclass of NSString).