Ported file-sync to new hashtable API.
Ported file-sync to new hashtable API.

Quick porting description:

1. osync_hashtable_free() -> osync_hashtable_unref()
2. add osync_hashtable_load() in plugin initialize function, right
   after osync_hashtable_new()
3. remove osync_hashtable_report() and osync_hashtable_reset_reports(),
   they're deprecated.
4. osync_hashtable_update_hash() -> osync_hashtable_update_change()
   Parameter list now takes just the hashtable object and the change
   object.
5. Order functions in get_changes() plugin function so
   osync_hashtable_update_change() get called with the new OSyncChange, when 
   the change entry got uid, hash and changetype set.
6. Make sure osync_hashtable_update_change() get called for every entry.
   Don't skip this call, even if the changetype is UNMODIFIED.
7. osync_hashtable_get_deleted() returns now instead of a char* array,
   an OSyncList. The entries are (const char*) strings which store the
   UID. No need to free the UIDs.
8. Iterate over the list like this: 
   OSyncList *u, *uids = osync_hashtable_get_deleted(YourHashtable);
   for (u = uids; u; u = u->next) {
          const char *uid = u->data;
          [...]
   }
   osync_list_free(uids);
   [...]
9. Call osync_hashtable_save() in your sync_done() function.
10. Test your plugin :)




git-svn-id: d6e11ae9e9475c467509976a7018c625922d636e@3299 53f5c7ee-bee3-0310-bbc5-ea0e15fffd5e

luizluca/opensync-file-sync,luizluca/opensync-file-sync