startSync = async () => {
    if (!started) {
      pubsub.addEventListener('subscription-change', handlePeerSubscribed)
      pubsub.addEventListener('message', handleUpdateMessage)
      // Subscribe to the pubsub channel for this database through which updates are sent
      await pubsub.subscribe(address)
      // Exchange head entries with peers when connected
      await libp2p.handle(headsSyncAddress, handleReceiveHeads)
      // Remove disconnected peers from `peers`, as otherwise they will not resync heads on reconnection
      libp2p.addEventListener('peer:disconnect', handlePeerDisconnected)
      started = true
    }
  }
Start the Sync Protocol.
@function start
@memberof module:Sync~Sync
@instance