Add F1-Button-enter-bootloader option, improve serial handling slightly, change default baud to 115200

This is done in two commits but I thought I could split up the pull request, as I don't know if you'd want both. But I can't seem to do that now, it's making me create one big pull request? Anyway the two changes:

First - holding the F1 button when you power on the unit causes it to enter the bootloader. The fan & heater are turned off however, so it's a littler nicer/easier to use than the normal method. In theory you could run the bootloader faster too by leaving the chip on PLL, but I didn't do that.

Second - I added a circular buffer to TX & RX on the UART. I didn't bother with interrupts for this - I saw some comments about sections of the code not being interrupt safe. But it avoids blocking now when you do a long printf(). To go with that I turned the baud rate down to a more 'normalish' 115200. Mostly because my USB-Serial doesn't work at 2MB/s, and 115200 is an easy calculation! But there is a define you can build with to leave it at 2MBs. This will be used for parsing commands at a future commit.