I do sometimes think a self organized hierarchy is better than one organized by fiat. Everyone always will say, "Ah - but then you just get an implicit hierarchy rather than an explicit one" with these types of systems but this isn't necessarily a bad thing. For example, There shouldn't necessarily be one escalation channel for all types of conflict - technical decisions may get resolved differently than intra-personal conflicts.
Or, if you force a team to be under an incompetent leader in a traditional structure, you get a really unhappy unproductive team but in an implicit structure that 'leader' is quickly sidelined when people figure out the quality of their decisions are poor, and if they want to get things done - which most do in a properly incentivized org- they should find another path.