Initial refactoring of git synchro

Caching git repositories and copying them into working directories are
two different tasks. This commit pulls out the caching into
R10K::Cache::Git and delegates cache methods to it.
Update yardoc
Rename synchro to working_dir
Move git cache object memoizing to cache
Merge branch 'refactor-git'
(r10k-#5) Ensure git remote cache is set correctly
Merge branch 'issue-5_set_git_cache'