There's a simple way to prevent re-entrency.
----------
bool isEntered = false;
function doSomething() { if (isEntered) { throw; } isEntered = true; ...; isEntered = false; }
----------
I don't really understand why they went with this gas-limit solution. I feel like there must be something I'm missing cause its too obvious.