It would be helpful to have some narrative that thoroughly describes the data structures used by libtopotoolbox, addressing things like in-memory layout, data types, etc. This information is available in the API reference, but it is separated into all of these different functions.