working on GUI and some clean up