I'm not sure how using mixins is better. Now you don't know half the time what is overriding what. Composition seems to be the better tool IMHO.
My notion of composition with classes would be:
class Dog(object):
def __init__():
self.wagger = Wagger(); #composing the Wagger class
in python mixins look like this: class Dog(object, WaggerMixin):
...etc...