Elon Musk cancels Twitter purchase