Initial work on GUI, still lots to come.