Well like I said, 2-man 5 man quests, 2-man 5 man instances, you need a tank. A Druid could be good, but if he's tanking, he can't heal also. The Enhancement Shaman can heal, but only for so long...Pala works good because then both can heal.
But with the Druid he can shift out and heal, plus they also have good buffs....but the shifting thing is the problem.
Ultimately you could do a Warrior also, just they have less utility because of lack of spells and less buffs. And I mean Protection Warrior, 2 DPS would have trouble with the 5 man instances and quests.
For farming, 2 DPS is the way to go, though it's still very good to bring a tank and a DPS to farm, it's about equal. In my opinion, Protection Paladin is the best partner, mainly because a Hunter/Warlock pet can't tank the hard stuff, you need a player tank for that.
Death Knight is an option though....they are almost Paladin's. They give some buffs and can heal, mostly themselves, but a Blood Death Knight can stay alive very well. When healers die in 5 man Heroics, oftentimes I can live on my own unless there is some kind of hard-hitting spell that I can't use AMS for.
That covers the 4 tanks....and I also mentioned double DPS, good for farming and questing, but hard for the 5 man quests and instances. And Enhancement Shaman plus a healer wouldn't work out so much, I wouldn't consider it really.... If your partner ends up Priest/Druid/Shaman/Paladin, then they can offspec heals.
Ultimately? I'd pick Protection Paladin. But don't just trust me, let some other posters weigh in their opinions also, and after that there's also you that needs to think about it, don't just completely utilize our opinions.