Ported r2904 from ZXing

Original commit message: "Make start symbol a part of returned raw byte
representation of Code 128"
Ported r2992 from ZXing

Original commit message: "Issue 1820 add Code 128 FNC4 support"
Remove trailing whitespace from code
Ported r2994 from ZXing

Original commit message: "Issue 1821: structured append support in QR
code from mike06j"
Make properties readonly unless they need write access