Only run a single repo_sync job at a time

It's currently possible trigger multiple calls to `/repo_syncs`
from the UI, by clicking the refresh link multiple times, or
reloading the page near the start of a sync.

This change ensures that `/repo_syncs` will not enqueue multiple
synchronization jobs at a time.
Gotcha. And `update_all` returns how many rows were affected?
What do you think about renaming `changes` to `updated_records`?