Currently Summon Familiar and some others are spells set to be cast once per game. I feel that a better game mechanic would be to put those on a timer.
Three timers could be set up for those spells, to simplify: good(5,25), better(10,50), best(15,75). The timer would also relate to your essence. For good spells, say familiar, a value of 25 could be given, subtract essence and generate a random number between 5 and the result. IE you have a 15 essence and you familiar dies, a number between 5-10 would be generated and in that many turns you could get your new familiar.
The waiting period represents the difficulty and or special nature of those spells and also is a penalty so carefree abuse of is avoided.
For a spell like Titan(best), say a value of 75 is used. so by the time you cast the spell your essence might be 23. You summon a Titan, 5 turns go by and it leaves, a random number between 15-52(75-23) determines when you can summon another..
Gotta run but will try to expand later.