So in response to your answer to my question #1. Do you create an entirely new block every time you attempt to find a new, valid hash for it? Again, that seems like a waste. If you try one hash and it doesn't work, you move on to the next because you know the old one doesn't work. So your odds improve every time - unless you change your block every time. Then it's just playing the lottery over and over again. Or maybe I'm falling for the gambler's fallacy?
So I'm seeing 2 scenarios. Scenario 1, Slush tries to figure out the same block over and over again until BTCGuild finds the solution to a block. Then Slush needs to grab a new set of unconfirmed transactions, update the previous block hash to the one that BTCGuild just solved, and then start over again, trying the hash over and over again. For scenario 2, Slush forms a block, tries a hash solution, then forms a new block, tries a hash solution, etc. until he wins the lottery. Which is it? I just can't help but see wasted effort every time Slush has to form a new block without solving the old one.