Does it need to be P2P? That seems complicated to engineer...