The infamous "Multiple merge candidates" error would still leave ItemSync
in a forever-stuck state when mRemoteItemsQueue was not empty.
Reproduced by adding a unittest that calls setFullSyncItems (with
a duplicate item), while the existing unittest for a duplicate item
was callling setIncrementalSyncItems().
I barely understand what I'm doing, please review carefully.