Just to clarify, I'm not talking about event-driven programming, errbacks and callbacks, but rather how they've done all of the abstraction of the different protocols and subsystems. It's one of the few times where I've considered inheritance absolutely essential.