Historian Andrew Roberts rubbishes left-wing broadcaster MSNBC over ‘colonialism’ anti-monarchist