One thing I will likely do in my homebrew game is have all mages gain their spells via pacts with otherworldly creatures. The creatures grant them the ability to harness magic, at the cost of fulfilling the creature's whims. Some creatures will want blood, some might be happy with wine and tobacco. It depends on the type of creature.
Creatures capable of granting spells might include: demons, dryads, elementals, or angels.
Sample pact granter:
Armor Class: 17
Hit Dice: 2
Attacks: 1 sting (1d6+poison)
Special: Poison tail, polymorph, regenerate, immune to fire
Move: 6/16 (flying)
Imps are demonic creatures sent or summoned into the material plane. They are about a foot tall, and have small but functional wings. An imp can polymorph itself into one or two animal forms: a crow, goat, rat, or dog being common. Imps regenerate 1 hit point per round, and can be hit only by silver or magical weapons (or by animals with 5+ hit dice). Imps grant mages the ability to cast spells. They will not supply access to holy spells or banishments.
Most imps will be very greedy, but will happily supply a mage with any spell he wants, especially those considered evil. Imps prefer things that appeal to their vanity. While they would be ok with tobacco or sacrificed humans, they would love a bard writing stories about them that show them to be powerful and intelligent. Imps love manipulating mages into committing evil acts, especially if the mage is trying to work for the greater good.