Plus, sending coins to an exchange with payment_id potentially breaks anonymity in one way.
Using an exchange based off an email address/IP address breaks anonymity for most people anyways. There's a line where the level of anonymity provided by Monero can never really break .. without the "exchange" itself in your example providing its own end of anonymity .. what can be done? They're working on getting an I2P c++ router for use in the protocol to at least address some identity issues.
You still have the ability to find someone OTC if you're looking for anonymity .. no payment id needed.
I'm making the statement that Monero can never force you to be 100% anonymous 100% of the time .. you're given the choice to be anonymous and/or private with your transactions to the extent that you would like. It's not the be-all-end-all of anonymity/privacy .. but it's a big head start.