gui: minor refactoring so the components expose WComponent and not
AbstractWComponent