Can you point me to some of the consensus protocol work? That's always seemed to be the more interesting aspect of BTC to me, but the other requirements of the currency have made that harder than just the smart contracts alone.
Last I checked, there's a single blessed node dishing out verifiable data. It's nicer than having a remote API that just hands you a trusted number, but it's a far cry from Nakamoto Consensus.