introduced system module with a simple task scheduler
[system] added publisher-subscriber messaging system
[list] minor
[timer] changed used timer to 1, removed fast handlers

also changed leds to use timer0 as its own timer to do fast pwm
[system] added subtyped messages

handlers can now require a particular subtype (this allows for very
simple conditions)
also simplified message handlers
[timer] dropped callbacks, using subtyped messages
[timer] added custom hardware-backed timers

timers are kept on a heap and managed in an optimal way. They support
single-shot mode and continuous operation

LAOUT_BEGIN changed, because the code has grown.
removed obsolete usb_keyboard.h
added licensing information