Add simple test for conflicting rebase workflow
Add low-level fetch() method to GitRepository

- Add --no-fetch option to `scc rebase`
Add integration test for `scc rebase --no-fetch` command
Fix flake8 warning
In `scc rebase`, fail-fast if target branch already exist locally

- also check if remote branch exists before pushing to Github
- add corresponding integration tests
Add integration tests for existing local and remote branch when rebasing
Add fail-fast for new commits between rebased branch and new base

This commit should close #25 by comparing the SHA1 of the newly rebased
branch with the SHA1 of the new base. If they are the same, e.g. if the
PR has already been rebased, the Rebase command throws a Stop with an
informative error message.
Add integration test for no new commits fail-fast checkpoint
Improve readability of Stop message when scc rebase fails with conflict

Describe detailed workflow for fixing the conflicts including the "git rebase
--continue" and the "scc rebase --continue" commands
Also give the commands to abort the rebase.
Closes #32
merge master -D org -I include -E exclude: PR 97 (Integration tests migration (final))
merge master -D org -I include -E exclude: PR 98 (Extend level size in logger format to properly display DEBUG logs)
merge master -D org -I include -E exclude: PR 100 (Rebase improvements)