Make TrySyncSessionJob post task on sync thread
Instead of calling sync cycle directly TrySyncSessionJob posts task on
sync thread.
Rescheduling exponential backoff timer had to be moved from TryCanaryJob
into TrySyncSessionJobImpl because it analyzes result of sync cycle.
The same with setting do_poll_after_credentials_updated_ after auth_error.
Tests needed additional PumpLoop because of additional Post call.
BUG=259913
Review URL: https://codereview.chromium.org/
114123004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@240949 0039d316-1c4b-4281-b951-d872f2087c98