Updated with a simple version of player/recorder that does support late join. However, the event list grows forever in memory