added Repo#remote_remove(name, callback)
Repo#sync restructured to make sure a 'stash pop' is never attempted if there was nothing to stash in the first place