US President Donald Trump and North Korean leader Kim Jong-un have met in Singapore and shaken hands in an unprecedented moment.