Test Architecture Tweak

As I was starting to write tests for sync-fork, wanted to try and simplify the test architecture a little bit.
Tests now update the remote with a second repository instead of using local and resetting.
This was just easier for me to think about and more closely mirrors reality.

@kevgo what do you think?

Note: I used git-extract to pull this off my sync-fork branch.
Hmm, yeah that would probably make more sense. Rebase on the main branch but merge in changes on the feature branch. The coworker idea was the only realistic way I could think of how there were commits to a feature branch that weren't already on your machine. 

This sounds like a good change in functionality that should be left to another PR.