parser now does the following for each data value:
1) promote unsigned values to next larger type
2) replace with null if value equals missing value
3) apply scale factor and addition offset
to do this, the netcdf variable for each structure member was needed
this required walking the variable list along with the struct iterator
Former-commit-id: 3e5a5774c4 [formerly 82cee15739 [formerly dee6d1d1bd169854109f0921ca0c23bc212d2df9]]
Former-commit-id: 82cee15739
Former-commit-id: 52a7443a6c