If orientation/heading of the boat is an issue, how about setting it as a constant to 0deg? After all, it is the tracks which relate the real information.

You estimate 16 hours of development time (which sounds very reasonable to me, as a former programmer), what do you charge pr. hour? This is a function that would be useful at other timesthan just the coming event.

How would you build the interface allowing for upload of all these files?