invoke $ready in multiple level inheritance

Asume Bar3 extends Bar2 extends Bar1 extends Foo. Foo defines $ready:

Bar3 -> Bar2 -> Bar1 -> Foo:$ready

Then $ready on Foo will be executed four times:

1- On Foo's level
2- On Bar1's level
3- On Bar2's level
4- On Bar3's level

This support makes sure grandparents get notified when their inherit classes are created