bl_helper: fix inverted logic for F1 flash writes
bl: switch to per-soc-arch bootloader builds

This allows for a single definition of the bootloader for
each of the SoC architectures (F1,F3,F4) and removes even
more of the code duplication for F1.
hw_defs: wrap all flash related structs with config options
hw_defs: query flash partition from board_hw_defs.c

This allows for an abstraction of the details of which
specific partition table applies to which board variants.

This is most applicable to CopterControl which changed
flash parts between rev1 and rev2.
discoveryf4: implement HW_DEFS_GetLedCfg API

This allows all F4 targets to be treated identically
for configuring LEDs.
stringify: add __stringify() macro definition from linux kernel
bu: switch to per-soc-arch bootloader updater builds

Bootloader Updater builds are now provided for F1, F3 and F4.
bu: add gdb config for flyingf3 bootloader updater
cc openocd: flip to using stlink debugger by default