Add a NAK warning, rename SFP_SHOW_WARNINGS
Use named structs to allow forward declarations

If all you need serial_framing_protocol.h for to use SFPcontext or
another such struct as a pointer type, then you can now forward declare
it like so:

typedef struct SFPcontext SFPcontext;

This can speed up build times by huge amounts.