We need a 2-way P2P file sync utility that can keep directories in sync across the Internet on Windows computers, similar to BTSync, Hive2Hive, and Unison. It's OK to start with an open source project like Hive2Hive, which is a Java library for developing file sync utilities. In fact, we would prefer to use the Hive2Hive library. We need no UI. We require:
* Block based protocol - sync only the parts of files that have changed.
* Support for Reverse NAT
This utility will be used to keep two or more directories on separate Windows computers in sync across the Internet. As files are added and modified and deleted from one, they should be added, modified and deleted from the other.