Revert "Merge pull request #395 from sarchila/master"

This reverts commit ef529578cc5dd5142cfb907dbe67dbeefa625288, reversing
changes made to c599674a87f9044da959d5f2381147f5ce95aebe.
Revert "Merge pull request #392 from sarchila/master"

This reverts commit c599674a87f9044da959d5f2381147f5ce95aebe, reversing
changes made to 3914e0c58187f26d6e64472581bb00b70c0ba056.
Merge pull request #396 from saponifi3d/josh-revert-collections

Josh revert bad merges
Revert "Merge pull request #396 from saponifi3d/josh-revert-collections"

This reverts commit 0ebca7ceceddeacd0cdf5bef60a9c888e213c429, reversing
changes made to ef529578cc5dd5142cfb907dbe67dbeefa625288.
only clone options.data if it is defined, fix typo
refactor syncer tests and add some new ones
use deep equals for object comparison
Merge pull request #397 from sarchila/master

Re-introduce proper query string handling for serverSync and clientSync