Canada and Mexico have hit back with retaliatory tariffs on President Donald Trump's 25% tax on goods imported from the countries.