CEX vs DEX: A Guide to Centralized and Decentralized Exchanges