Check if revision exists before downloading
Check if revision exists before downloading

The `sync` command is fairly slow even if the cache contains every revision being
synced. This is because a download is attempted even if it is unneeded.

This change changes the flow of `context.Sync` to attempt to `RevisionSync` with
whatever is in the cache, if that fails then it calls `Download` followed by
another `RevisionSync`.

kardianos/govendor,kardianos/vendor