stab at adding gui support