As an aside, what I originally planned to do was remove the concept of "spells" as entities that are pre-determined altogether...
I remember a CRPG (forget the name though) where the magic system consisted of combining components to get the spell effect you wanted.
For instance, you would find that Herb A gave a damage effect, Herb B gave a ranged effect and Herb C gave an area of effect. So by combining these you could make the "spell" you needed on the fly...
The system in that game was balanced by rarity and value of components, and the fact that some components did bad things in combination; you only found out by experimentation.
My plan was to provide a pallette of spell effects (damage, range, healing, duration, healing etc) and allow the caster to combine as they liked. More effects meant more mana cost. (to scale your damage you add in multiple damage effects...) This also included the concept of power components; Herb D, for example, might be a larger damage effect, but be much rarer than Herb A (above)
This would combine with the casting checks that I am using, wherein a check could be made to "learn" a set of effects as a spell, making the casting of learnt spells easier / quicker / cheaper than making it up as you needed it.
All in all this appealed to me as a concept, but I couldn't quite bring myself to spring that much of a change on the players, or (to be honest) to put in that much hard work redesigning the entire magic system from the ground up (you'd need all your compomnents prepped and named etc.)
Its still on the "wouldn't that be nice" list, though...