python why call super(class).__init__()
super() lets you avoid referring to the base class explicitly,
which can be nice.
But the main advantage comes with multiple inheritance.
Note that the syntax changed in Python 3.0: you can just say super().__init__()
instead of super(ChildB, self).__init__() which IMO is quite a bit nicer.