My Typhlosion would be my top choice. I can teach him fire moves by default and follow up with Earthquake, Thunder Punch, and Hidden Power. For Typhlosion, Hidden Power has the effectiveness of an Ice-type attack, so all bases are covered.
Second choice goes to Aggron, preferably with the Rock Head special ability. That way he can use moves like Double Edge, making him a fairly brutal tank. Follow up with Steel Claw or Iron Tail, Magnitude, and Mirror Coat.
My third choice goes to Gardevoir. Confuse Ray, Shadow Ball, Psybeam, and Shock Wave.
Those are my choices. I'd go with any one of them for what they offer. They each can be balanced so that they can go against nearly any opponent. I could certainly have gone with a Dragon-type Pokemon, but as much of a fan of them as I am, it feels way too easy to go with any of them for their lack of weaknesses. Same with legendaries, with all their power.