All sounds very interesting. Perhaps I will first look at the mod described above and then look at doing some basic programming.
Start with the programming, then look for other people's code for ideas.
Because once you know programming, you will be able to do your own ideas, instead of trying to implant other people's stuff into your own mod. Merging mods can be much harder than to actually make your own code, because you need to understand someone else's code in order to use it yourself. And there might also be compatibility issues that make it necessary for you to rewrite some that other code, and you won't be able to do that unless you understand what it does.
With that said, once you know what you're doing, merging mods can of course save you hundreds of hours of work...
We could of course jump start the programming thing with a hands-on lesson in CivIV Python. I think a little respawning/rebellion mod (as requested in the OP) would be a good place to start. Then you could backfill the information you need to fully understand what we just did. Just tell me and class will be in session.
This also goes for the spell casting thing. If you do learn proper programming you can make your own thing, and get it just like you want it. I'll even walk you through it, if you want. Promise.
Before you start Python modding though, you might wanna consider using the BUG mod as the basis of your own mod. I believe there is a tutorial to get you started with modding also, and BUG is supposed to be chock full of useful tools for this. (Unfortunately I'm basing my own modding on the RFC mod, so I'm yet to look into modding with BUG.)
Or you might wanna use another mod as a template for your own mod. Preferable one that you can use to build on - not strip down to bare bones. (In the last case I'd go with BUG, as it has no gameplay changes what-so-ever.)