async function startGame() {          
  dataSource = new AblyTrainArrivalsClient()
  game = new Game();
  ui = new GameUi(game);
  
  game.start({
    onGameStart: async () => await dataSource.listenForEvents("940GZZLUKSX", msg => game.registerEvent(game, msg)),
    onGameEnd: () => dataSource.stopListening()
  });
  ui.startRendering(game);
  return game;
}