Also split out the firmware parsing to an object so we can check the firmware using firmware-parse and also fuzz it. See also: https://github.com/fwupd/fwupd/issues/1665