Implement reading firmware on Horus via USB (#5442)
* Add firmware lun target for non EEPROM platforms
* Fix Fat fat tables and make FAT 1024 byte big
* Niceify some constants
* Cleanup (saves 1024 byte of flash) and fix reporting wrong Size of drive
* Silence compiler warning, set right size for flash on X12/X10
* Add firmware.txt/bootload.txt to virtual drive that displays version information
* Report also version of other component (bootloader/firmware)
* Show version also in bootloader and fix F4 platforms
* Save space on X7
* Fix X7 logic
* Compile fix for AVR
* avr-gcc does not like no newline after ifdef
* Really fix avr