Add icon support

Modules may define icons as bitfields and pass them to karuibar, which
will create and handle the pixmaps and return an ID to be later used for
inserting the icon to a text through the appropriate escape sequence.

We introduce the pen structure, which holds informations about the
amount of characters we have already been handled (drawn and/or escaped)
and the X position of where the next thing shall appear. This simplifies
a lot of things, as we do no longer need to pass these informations as
arguments to functions, and the function no longer need to return
updated informations, as they all simply use, share and update the pen
structure.

A few routines (mostly concerning lists) are simplified, as the addition
of icon support brings some code redundancy (e.g. monitor lists).