CNN fires journalist who criticised Israel and called for 'free Palestine'