Ben killed Nadia and Widmore's agent was tailing Ben.
Why would Widmore kill Nadia? To know from Sayid where the island is? Sayid doesn't know.
Ben's reason to kill Nadia could be to get Sayid to believe Widmore did it, so Sayid will kill Penny.
I also think that Ben killed Nadia, but that Widmore's agent was in Tikrit to find out whom did it - not necessarily expecting to find Ben.
I think that the London scene was non-sequential. I've no reason to believe this, other than Ben's hairstyle being different. It's just intuition on my part. My timeline would be:
01. Ben-slightly-in-the-future makes a planned trip through time to kill Nadia;
02. Widmore deploys an agent to Iraq, to find Nadia's killer as they may be linked to the island he's attempting to locate again. Widmore doesn't expect Ben himself to be the killer;
03. Ben-slightly-in-the-future visits Widmore to taunt him;
04. Ben-slightly-in-the-future returns from whence he came;
05. Ben-a-lot-in-the-future appears in Tunisia. He has evidently left in a hurry as he is wounded and dressed inappropriately;
06. Ben-a-lot-in-the-future recruits Sayid
07. Ben-a-lot-in-the-future returns from whence he came;
08. Ben-a-lot-in-the-future survives an assasination attempt from Sayid that wounds his arm. Sayid wounds him whilst attempting to stop Ben travelling back in time.
Something like that.