After weeks of military threats and arguments over a venue, the US and Iran are about to hold talks in Oman.