Use more realistic UDP-based networking

This makes the tool a lot less of a proof-of-concept and more of a real app: UDP based networking, manual startup of different members of the cluster, etc.