David Frum has an excellent post on the Haggard mess.