sync: Process commit responses on the sync thread

Convert ProcessCommitResponseCommand from a ModelChangingSyncerCommand
to a regular SyncerCommand.  This means that it will be executed
entirely on the sync thread, rather than having its work delegated to
the native model threads.

This is built on top of the recent ModelNeutralWriteTransaction and
ModelNeutralMutableEntry work.  In order to ensure that no
model-changing mutations are performed while processing the commit
response, and to prevent future code changes from introducing them, the
ProcessCommitResponseCommand's methods have been converted to use
ModelNeutral transactions only.

The use of ModelNeutral transactions and non-ModelChanging
SyncerCommands should grant some minor performance improvements and make
the code simpler.

BUG=284672

Review URL: https://codereview.chromium.org/24764004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225585 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 225585