US President Donald Trump has signed the US-Mexico-Canada Agreement (USMCA) into law in a move he says ends the "NAFTA nightmare" and replaces the 25-year-old North American Free Trade Agreement.