signal & slot connections; took some time because of circular dependencies;