A bit about the naming convention: C and C++ use underscores and all lowercase for functions, and camelcase without underscores for structure (etc) names. Common practice is to use names that are gramatically correct and clear: create_entity rather than ent_create. But since 3dgs doesn't follow that convention, it might be a wiser decision to follow 3dgs' choice anyway.
Nice lib, such things are very useful, and every programmer should built likewise on his own as he goes
. Having a starting lib like yours saves a lot of time.