def __new__(cls):
    pass

def __init__(self):
    pass

def __getattribute__(self, attr):
    self_dict = object.__getattribute__(type(self), '__dict__')
if attr in self_dict:
    return self_dict[attr]
return getattr(instance, attr)

def extra_feature(self, foo):
    return instance.username + foo
return wrapped_user()
How to fake type with Python