Wow, I didn't expected so many replies.

To clarify a few things:
Unfortunately it seems you thought this is meant to be some sort of plan. It is not. It is an IDEA. I posted the code just to show what I mean, not to show what great coder I am.
Here I want to quote myself:
Originally Posted By: lemming

At the moment it needs to be cleaned up and is very incomplete.


And because I made every mistake a programmer can make in my very little snippet, I shall comment on this, too:
Sid is right. Thank you for pointing on my mistakes (yeah really!). And I have no problems with his words, I grew up with the internet.
My code is poorly (if not horribly) written and I know NOTHING about API design.
That handle example was the very first I came up with and it even sounded stupid to me, but I had no better idea when I posted it. But Anet for example had an API change in some version that was not so minor.
The precompiler stuff is just that bad, because, well, I never did something that "complex" (more than one IF in a file) with precompiler commands. So I looked in the command list, "Ah, that might possibly work.", and it worked in the first test run. The rest was copypasta. I hate it when I do it Quick'n'dirty, but sometimes I fall for it.
Tabs? Well, dunno. Never thought about that. They are just easier to navigate than spaces.
Naming convention: Yeah, the code was written longer ago. I made several naming convention changes in my life just to find out which one just feels right to me. This one was very close to what I stick now (and believe is called "Camel Case") void prefix_someFunction(var someVar). (But for the CLTEXT lib I changed it to be compatible to the TUST convention.)
So much for my excuses.

About the lowest dominator:
Of course the lib covers only the stuff every other lib has in common. Everything else would be a pain to code. My intention was to ask "Does anyone need something like that?". And we are discussing about that. That's what I wanted.