Revert "Merge master into flight-imu. Fix usbdetail.c extern vars after merge"

This reverts commit 37fd0b2b22417b9acc0c3cae7a9889034f91522a, reversing
changes made to 81a3f7f0ac70e096a5673d10cd07ae7b2de78973.

Conflicts:
	projects/mpu/Makefile
Fixed compile issues caused by fba7, fd24 and 37fd. Requires git submodule update

This is a huge and ugly commit but it seemed best to do it in one
go.

What is going on: From the partial revert of 37fd in fba7 many projects
needed to be re-converted to using the new USB serial stream API (usbdetail.h).
As a result of fd24 and the new compiler we can no longer use anything in stdio.h
which is good mostly because we shouldn't be anyway. The one useful exception is
sprintf which obviously doesn't require standard streams. It does require some
low level funtion (r_sbrk) though which our new compiler doesnt provide.
ChibiOS thankfully does provide an sprintf analogue chsnprintf (similar to
printf and chprintf) but only in a later version than what the submodule was set
to (2.6.0 vs 2.6.2).

So we had to bump the ChibiOS version, which introduced incompatabilites in
some mcuconfs and boardfiles, which I've corrected. Everything compiles again
which is good.