lots of changes to gui