Is the long term plan that there will be one reference client forever? Ideally, the protocol should include some kind of system for handling a situation where some of the miners are using a client that has forked.
Interesting. The question is if it is reasonable to have several alternative implementations. Say one would have two node types, say 50% of miners would run bitcoinA and 50% bitcoinX. Now the developers of bitcoinX decide to introduce a new feature for making transactions more anonymous. bitcoinA devs oppose. And so the chain splits, based on the implementations.
What would be the incentive for miners to use bitcoinX? Pretty much none, because there is only risk involved and little benefit. Everyone will stick to bitcoinA.
Essentially it probably means that true alternative implementations will be Alt-Coins and Coins will be competing against each other. I don't know how much BTC the core devs hold, and to what extent it is public knowledge, but one can imagine that introduces some biases. The general attitude towards alternative implementations and Alt-Coins is mostly negative, for good and bad reasons. But the idea that there should not even be proper documentation is absolutely ludicrous. You might as well run the project as closed source then.
The control of the code is codified through the SSH access keys. In the end the references to "community" are very vague and not based on formal trust models. I assume that miners largely don't care.