A bit cleaner maybe.
There's no order restriction anymore.
Move airways to dedicated file.
Misc. cleanup and simplification.
Yep, airports are valid waypoints too.
Get rid of an anonymous struct.
More data factoring.
I guess I like this better.
I prefer this too.
I forgot to read realloc documentation to the end.

Also simplify ndp_list_add.
Slightly more correct.
Avoid a nasty double-free, as the provided buffer is also freed by the caller in case of failure.
Simplification.
Further cleanup and simplification.
This seems to always work.