ruby inheritance vs composition