Geo: Improve backfill

Description

This relates to using Geo for GitLab.com: https://gitlab.com/gitlab-org/gitlab-ee/issues/1884. Backfill only works the first time when the repo doesn't exist. We need backfill to be smarter and resync repos that are broken or have not been updated in some time. We can look at the timestamp of when the repo was last updated (e.g. secondary can look at the push events for the repo)

Description

/cc @regisF @stanhu @brodock