basic GUI implemented