Fix flaky FileFlusherTest.DuplicateRequests

The flakyness is cause by the racing that the first flush request
might be started before the duplicate request comes in.

Also fixed a problem that Job::ScheduleFinish could be called twice.
One from Cancel and the other from Start on a canceled job.

BUG=647070

Review-Url: https://codereview.chromium.org/2342813003
Cr-Commit-Position: refs/heads/master@{#418914}
3 files changed