refactor to make speaker list use same UI as session list