Shallow insight, but separating the algorithmic/representational and sqlite operational parts into own C projects, is possibly a good idea.
I'd expect the rate of evolution to be significantly different between the two parts, and if you are using an algorithm library adopted by others, you may get progress "for free".
I'd expect the rate of evolution to be significantly different between the two parts, and if you are using an algorithm library adopted by others, you may get progress "for free".