more cleanup of gui
remove parent from Component __init__ and make text a property
alignment now sort of works