I do it this way: MAGE - ALL MAGIC EXCEPT NATURE AND DEATH, warfare, leadership. Then, depending on the choice! (IF THE MAGE IS A NECROMANCER, I give him death magic but won't give him nature magic, and if the mage is a nature mage, I'll give him nature magic but not death magic). And for warriors: everything that isn't magic, and when all the previous abilities are learned, I take the magic of his faction!!!
I think it's not necessary to take two heroes in a party! (experience is divided in half)
In my opinion, you should only take a mage in a party, as there is a lot of useful stuff for them in the game!
I'll try to level up Demonology for him, and you'll see the EFFECT (try it).