By the way, something else I've been wondering (and an excuse to get to 5 posts): what is the incentive for a node to include any transaction in their block for free? If you have a lot of transactions, isn't it going to take longer to hash? If I was selfish, why wouldn't I calculate a block and only include my own coinbase transaction and nothing else?
Similarly, as the network picks up popularity aren't we running the risk that we'll have to start including millions of transactions in every block? Even if the difficulty adjusts to accommodate the slower hashing, won't the blockchain get untolerably large (in terms of storage space)?