The attempts by people to badmouth CDMA never cease to amaze me. The original GSM was based on the horribly inefficient TDMA. Basically, the phones took turns talking to the tower, even if they had nothing to say. You got the same limited bandwidth whether you were the only phone connected to the tower, or if the tower were at capacity. If there were more phones than timeslices, you couldn't connect, period.
This is only true for active calls. Many more "idle" phones could be connected at once. There is a limit of 8 connections/cell (so usually 24/tower).
CDMA allows all phones to transmit simultaneously, they just use orthogonal codes which allow the tower to decipher which signal came from which phone. It's computationally more expensive, but it allows a single phone to use all the bandwidth if there are no other phones, while distributing the bandwidth equally if there are multiple phones. If there are more phones transmitting than bandwidth, you start getting dropouts (the volatility of SNR means there's no hard limit at which this happens, as with TDMA).
When carriers started adding data services, GSM was borked due to TDMA's inefficiency. That's why CDMA carriers rolled out 2G and 3G service about a year sooner than GSM carriers. GSM was forced to graft on a separate non-TDMA radio just to handle data traffic. (This is also why you can talk and use data simultaneously on GSM - the phones have two radios, one for voice, one for data. It's not a feature; it's a side-benefit to a fix which CDMA never needed. Most CDMA phones just have one radio which handles both voice and data.) The later GSM 3g data protocols used wideband CDMA. That's right, CDMA won - it was the better technology for data. GSM just incorporated it into their standard so it was still called GSM. If LTE is CDMA functionally dead-ending, then GSM dead-ended way back when cellular data services were first added.
No, GPRS (GSM's data bolt-on) does not need a separate radio. It uses the free timeslices (not used for voice) for transferring data between the handset and cell (tower). So if all of the 8 timeslots are busy, no data. If no one is talking, then you can (theoretically) use all that for data (though most phones have a limit of at most 4 or 5 of the 8 timeslots).