desktop.c is currently a bad hack that does rely on my own personal icons dir
to show icons - i'll add a menu creator set of code in menudb.c that can
create menus from db's so we can start being able to configure menus for the
desktop etc.)
SVN revision: 4163
it also handles clients that re-configfure size and position whilst
shaiding & unshading and whilst shaded. it also doesnt segv if a window
closes/vanishes whilst shading (i added a subsystem to handle stopping
of continuing timed out actions if their object goes away)
SVN revision: 4006