wip: social_snippet: add SocialSnippet class

* add get_installed_repositories()
* add get_repository(repo_name)
* add get_snippet(tag)
* add resolve_snippet_path(context, tag)
wip: social_snippet: spec: add SocialSnippet#resolve_snippet_path()
wip: config: add constructor
wip: config: spec: add spec for home dir config
wip: context: add Context class

* add move()
* add move_to_new_path()
wip: context: spec: add move()
wip: repository: add Base class

* add get_versions()
* add get_refs()
* add checkout()
* add is_version()
* add Base.is_version()
wip: repository/base: test: add test for is_version()