Herencia de la clase Python AttributeError - ¿por qué? ¿como arreglar?

Preguntas similares sobre SO incluyen:éste yesta. También he leído toda la documentación en línea que puedo encontrar, pero todavía estoy bastante confundido. Estaría agradecido por su ayuda.

Quiero usar el atributo .wandtype de la clase Wand en mi método lumus de la clase CastSpell. Pero sigo recibiendo el error "AttributeError: el objeto 'CastSpell' no tiene ningún atributo 'wandtype'".

Este código funciona:

class Wand(object):
    def __init__(self, wandtype, length):
        self.length = length 
        self.wandtype = wandtype

    def fulldesc(self):
        print "This is a %s wand and it is a %s long" % (self.wandtype, self.length) 

class CastSpell(object):
    def __init__(self, spell, thing):
        self.spell = spell 
        self.thing = thing

    def lumus(self):
        print "You cast the spell %s with your wand at %s" %(self.spell, self.thing) 

    def wingardium_leviosa(self): 
        print "You cast the levitation spell."

my_wand = Wand('Phoenix-feather', '12 inches') 
cast_spell = CastSpell('lumus', 'door') 
my_wand.fulldesc()  
cast_spell.lumus() 

Este código, con intento de herencia, no lo hace.

class Wand(object):
    def __init__(self, wandtype, length):
        self.length = length 
        self.wandtype = wandtype

    def fulldesc(self):
        print "This is a %s wand and it is a %s long" % (self.wandtype, self.length) 

class CastSpell(Wand):
    def __init__(self, spell, thing):
        self.spell = spell 
        self.thing = thing

    def lumus(self):
        print "You cast the spell %s with your %s wand at %s" %(self.spell, self.wandtype, self.thing)   #This line causes the AttributeError! 
        print "The room lights up."

    def wingardium_leviosa(self): 
        print "You cast the levitation spell."

my_wand = Wand('Phoenix-feather', '12 inches') 
cast_spell = CastSpell('lumus', 'door') 
my_wand.fulldesc()  
cast_spell.lumus() 

He intentado usar el método super () en vano. Realmente apreciaría su ayuda para comprender a) por qué la herencia de clase no funciona en este caso, b) cómo hacer que funcione.

Respuestas a la pregunta(3)

Su respuesta a la pregunta