Ahem... despite what you might have heard on the boards, mages are still extremely powerful. Their burst DPS is the highest in the game and they have spells that make groups beg for them: Polymorph and conjuring. Sure, they have to sit more, but that's because they can burn through monsters at a faster rate just by tossing more mana at their targets. (Tigole himself laid the smackdown on people who said that the mage wasn't the fastest at killing monsters. "We have numbers, we know which classes kill the fastest and why. I won't be dragged into a debate with you." Priceless.)
Mages lost their invisibility because it was too powerful. Their damage spells are strong, they have to be, but invisibility made things obscene. A mage with the drop on their opponent could win virtually every time. Invis, sheep, auto-crit (talent) pyroblast=massive damage with no response. Now the mage casts a few frost spells to kite and finishes with the spells of his choice. How could one live through that? Mages have been nerfed since then to bring them in line. All of the complaints you hear on the boards are because playing a mage used to be like playing God-mode, and Blizzard fixed the problem, to the dismay of all the power-gamers who rolled a mage to get in while the getting was good. In fact, you'll still get posts like "The ideal group is warrior, priest, mage-mage-mage".
In short, mages do not "suck". They are still very strong.
Warlocks were gimp for a very long time, and even now they aren't completed. The next patch will finally see them given higher-level pets. With these increases in power and talents, warlocks are really coming into their own. Warlocks don't nuke particularly well, but they have a number of damage over time spells. In fact, warlock is a class that can experience almost no downtime if played right. The warlock has a number of ways to transfer health and mana between himself and his pet, and ways to drain these resources from his enemy. A warlock can go from fight to fight to fight with very little downtime. The cost of this, however, is that it takes more time to deal with each foe. Additionally, it's not like one can just slack off while playing a warlock, since warlocks require active use of their pets and pet abilities to maintain aggro. Warlocks are still squishy caster types, and since they can't kite like a mage or blast enemies apart like a mage, they rely on their pets to keep themselves safe. To sum up, warlocks operate over time better than mages, with little to no downtime. Mages are better at burst DPS, warlocks better at sustained DPS (or their preferred measure, DPM-- how much damage they inflict per minute, factoring in downtime between fights to drink or heal). Warlocks also offer crowd control, in different forms from a mage's, and have curses that effect the enemy in ways other than straight damage or DOT.
Which should you choose? That's up to you. Both offer strong damage, AoE damage, some crowd control, and different types of utility. Nothing is broken, and class balance is good. Ultimately, you should choose what you want.