Implement unyank for local and remote repositories.

Implemented unyank support, you might want to double check how we've done this. Furthermore we've assumed that we don't care if a gem has not previously been yanked when we try to unyank, as it won't overwrite anything anyway.

Getting the tests passing in this PR depends on PR #25 being merged (unless you have those missing gemspec files on your machine already).

Fixes: #9