Track unmatched lines with new Unmatched struct
Renamed unmatchedLines to unmatched
Remove lineNum from decodeState struct - not needed since all parsing happens in 1 loop