Allow me to play the cynic for a moment. (It comes fairly easily, I admit.)
President Obama (and Gen. Petraeus) asked for and received General David McKiernan's resignation as senior U.S. commander in Afghanistan yesterday. While there are clearly still many issues to be worked out in Afghanistan, and perhaps news will emerge that McKiernan was standing in the way of some new administration policies... as of yet, there doesn't seem to be a huge reason for this.
My thought: Is this like the baseball team that fires the manager after a disappointing first half? The team sucks, and there's not a whole lot the GM (or owner) can do about it, but by firing the manager, it looks like they're doing something about it. With dire warnings about Pakistan, and no real change of strategy in Afghanistan, other than sending more American troops there, maybe the President wanted to look like he was doing something substantial.
I hope I'm wrong. But this thought has been nagging at the back of my mind for a while.