Software Development teams can only be a small number of individuals, with a preferably smaller number of members with commit access to the project. The fact that we have a really amiable, pragmatic guy in that role right now has been consistently good for Bitcoin; Wladimir van der Laan is exactly the type of leader I like.
I think Linux has managed quite well with huge number of contributors (thousands?). Linus has been it's benevolent dictator from the day one (although he has been delegating his work to trusted "leutenants" more and more). It seems that large software projects need to have clear hierarchy in order to move things forward (someone has to have the final say on what patches get accepted).
Obiviously some people will sometimes disagree in direction taken and it will result in a fork. But the impression I get from Core is that it has no direction (no one has the final say in what should be done), just bunch of devs with different ideas on what should be done.