GUI part 1

By Danny, more to follow during the day.