Fix parsing of shorter GSV sentences

This patch set fixes parsing of shorter GSV sentences that list less than 4 satellites (without commas).

Example comes from test_minmea_check: "$GPGSV,4,4,13,39,31,170,27*40"

Along the way, fixed warnings when running it under gcc with these CFLAGS:

CFLAGS = -g -Wall -Wextra -Wformat=2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing -Wfloat-equal -Wundef -Wuninitialized -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings -Waddress -Waggregate-return -Wstrict-prototypes -Wold-style-declaration -Wold-style-definition -Wmissing-parameter-type -Wmissing-prototypes -Wmissing-declarations -Wmissing-field-initializers -Wmissing-noreturn -Wmissing-format-attribute -Wpacked -Wredundant-decls -Wnested-externs -Wshadow -Wsign-compare -Wlogical-op -std=c99