Exposed mem_canvas structure

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
[cleanup] exposed icon cache for subclassing

 - exposed icon cache structure
 - exposed icon structure
 - exposed tree insert and find methods

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
Added hooks to icon cache for subclassing

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
Added direct pixmap access to icon cache

 - Icon cache exposes rectangle allocation function
 - Icon cache exposes function to obtain pixmap

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
[cleanup] code reuse: made font cache special case of icon cache

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>