Another checkpoint. Updating interfaces For IKeyTabulator (+friends) to take an unsigned long long "value" to track -- and making the call "update()" instead of "add()".
 * Also updating ICorrectSkew so that healKey() now takes a treeid (and Synchonizer now calls healKey()), and adding a new method, "sendKey()"
Implementing the healing/sync loop to allow multiple versions of keys to successfully propagate. Versioned writes are now feature-complete.
 * finished changes to SkewCorrector::healKey(), including unit tests
 * finished changes to Synchronizer for healKey case
 * added summary() to DataChain, which produces a uint64 that encapsulates the key state (for use by merkle/digest tree)
 * added summary() accessor to IDataStoreReader interface, so callbacks have access to the updated key state
 * fixed a bug in WanPackerHandler, when the action is ba
 * added HealKeyAction, which is used to trigger the other half (other peer) of the healKey() operation
 * added OfferWriteAction and DemandWriteAction, which combine to allow selective healing (a peer confirming/rejecting what files he wants to receive)