The Solution

I needed to convert waypoints between a couple of formats, so I whipped up a converter and based it on an extensible foundation so that it was easy to add new formats. Most file formats added so far have taken under 200 lines of reasonable ISO C so they can be stamped out pretty trivially. Formats that are ASCII text delimited in some fixed way can be added with no programming at all via our 'style' mechanism.