adding scheduler called looper to drive tasks or jobs rather.  I tried out a timer/interrupt driven version called leOS but quickly found out that that placed lots of heavy code into the interrupt call which made things go bad and ended up killing the interrupt handling. Luckely looper was the manually pumped version of that.
Refactored states and sensors to use jobs.
Added a tone definition to get the notes of the info beeps made by AXS1.
adding MinIMU to Stikklar.  Refactored the MinIMU9-AHRS into a class and have it write to the blackboard.
Change the controller to modulate speed using both the gait period time and the stride size. Starting very slowly with short steps and ramping up to a very short period and large strides.  Had to refactor the time pump to make sure time always advanced and could never go backwards which makes the gait do jerky things.

Profiling notes: while the IMU takes 5 seconds to initalize the update take only 2.8ms @400MHz I2C
The blocking gait update was 18-32ms which made me sad. Updating the pose and writing to 16 servos was just over 600us so I now have the looper job take care of never hitting the busy wait by keeping 33 ms update time in sync with the bioloid frame time.
The doIK does 11 ms on the other hand which has me a bit worried.  I'm pretty sure that is due to the liberal use of float math and trigonometry so there are lots of optimization opportunities there.