Elon Musk offers to buy Twitter for more than $40bn