CME to buy CBOT in $8 billion deal