This event proofs that it is basically impossible to re-implement the Satoshi client. You not only need to re-implement all functions and features, but also all bugs, in order to be compatible with the Satoshi client. Making a incompatible will just lead to a hard-fork like this event.
No, this event proves the Satoshi client is the de-facto protocol, and if the Satoshi client so decides one thing, then it is and everyone bends to fit it. If the Satoshi client is the only client, then there is no consensus, it's just one source for decision making. But if the Satoshi client weren't the only client then whoever was using a bad client would simply be left behind. A "bad client" is one that disagrees with the consensus.
I agree. Also, as long as well written clients keep an eye out for longer alt-chains, then there's no harm in hard forks occuring. The longer fork (as Gavin states) determines which is the de-facto bitcoin. It would also benefit bitcoin if miners didn't rely so much on the satoshi client as this also reduces decentralisation.