Revamp console system.

Each console now has its own struct to store data, and its thread is
allocated dynamically. The 'struct hydra_console' is defined in
common.h, and can be extended with console-specific fields.

Every function callback gets this console's struct as a parameter,
instead of ChibiOS's BaseStreamSequence output handle. This handle
is included in the struct.

These changes reduce overall code size.