make alt only 5 chars (uint16), add sent_id field
add variable length field feature

this commit first adds a helper routine: i16toav - this converts a 16
bit number to a variable-length string. when called, it returns how
many characters were needed.

this routine is used for the sentence_id field, which is made variable
length. it only consumes as much characters as it needs, minimum 1,
maximum 5.

to make variable lengths possible, some refactoring had to be done -
namely the offsets had to be reordered and redefined. the trailer
(postfix after the checksum, e.g. a newline as needed by the parser) was
made into a define and is now copied at the end of the frame. also,
commas are now set every time and the fixed string in main.c has
vanished (finally!)

it should be easy now to convert the other fields where it is useful
(think altitude) to variable lengths
convert altitude field to var length
make sentence counter 16 bit