Major revision - mainly in GUI