Better hierarchy of gui classes