Watch for changes to this CRDT. Use key to monitor a specific key.
key
@override Stream<MapEntry<K, V?>> watch({K? key}) => _controller.stream.where((event) => key == null || key == event.key);