Boris Johnson apologises for 'hurt and offence' caused by Islamophobia in Tory Party