If you see my review on Modern Warfare 2, you'll notice that I am very confuse why Shepherd kill Roach and Ghost. After a lots of googling here and there, this is the most possible answer, just in case you are confuse about it.
Makarov is not a ultra-nationalist, he did whatever he paid to do. Pvt. Allen is supposed to spy on this so called terrorist. But what actually happen is Makarov's client is Shepherd. The airport massacre is Shepherd idea, and Pvt. Allen is the key why Russian pointing on US in this attack. Presumably, its also Shepherd idea to kill Allen, so the body found by the Russian, and the war start.
Wait, why Shepherd wants to have a war with the Russian. Because he just lost his men at Middle East nuclear (MW1) and apparently he want to rise the American Army as it used to be, and also become a war hero. Apparently, the only way to do this is to get the government attention and give him a blank check which is only possible when a war is happening in the US Soil.
So what does this got to do with Roach and Ghost? Probably, they found something in the Makarov's safe house that may link the massacre to Shepherd.
Thats what I got. Whats yours? ;)