IS has declared ‘war on Britain’, says Cameron