President Trump's National Security Adviser Michael Flynn has resigned.