I hate when the compiler doesn't check something what it normally does: `pgm_read_byte` is more than happy with a parameter (*str), which reads an address at a location where *str points to - which is obviously not the intent.
and improve the variadic version used to print formatted text at some spots in previous commits
Encapsulates the #define macros and AVR implementation of dumping strings (RAM and PROGMEM) onto USART1.