kaflan,
Собственно, там, в твоем юзкейсе, класс Animal вообще не нужен. Он может понадобиться, только если в дальнейшем собираешься расширять. Вот в таком, например случае, он действительно нужен
Animal={
say: function(){return this.kind +" "+ this.name + " saying "+this.word}
}
Cat=Object.create(Animal)
Cat.kind="Cat"
cat=Object.create(Cat)
cat.name="Garfield"
cat.word="meow"
Dog=Object.create(Animal)
Dog.kind="Dog"
dog=Object.create(Dog)
dog.name="Huy"
dog.word="gav"
alert(cat.say()+"\n"+dog.say())