I have to say that you guys already did great job. Here are just a few features that will be nice to have.
1. Is it possible to add a filter attribute to current SyncRequest, such as only returns either contact, message or appointment items?
2. Currently all deleted IDs are mixed in one block, it will be nicer to separate them by type (m, cn or appt...)
3. There is not a flag to distinguish a modified item and new item.