Thanks to a kind PR contribution from @ellieejlee, we hopefully have a final solution to the issue that sometimes caused duplicate messages to arrive at the front-end. See Issue 33 and PR 38
Dependent libraries also updated. No other changes.