Split JSON parsing out into a discreet class.
First pass at a JSON schema and cleaning up the dpp-json.
Denormalize matching criteria.
Use a byte array to handle the command list.
dpp-json: Indent / fix whitespace issues.
DS2Packet: Use C++ style cast where possible.
V1Parser: Store NULLs instead of empty strings where possible.
Align tests with new dpp-json layout.
Update tests to be more Qt-like.