Why Warren Buffett is sitting on a record $128 billion in cash