log and exception handling; GUI base code