I guess it is akin to working with layers, like in adobe. You create an object with certain prototype, than you create another object to inherit from that. And yet another object that does finally render something on screen. And then benind all this you have some sort of state to control what is going on and what should be fired etc. It is means (for me) to work in layers that depend on each other