Reorganized to include initial GUI