Philippine President Rodrigo Duterte calls Barack Obama a "son of a whore" as he vows not to be lectured by the US leader on human rights when they meet in Laos.