Implement logic to open PR after pushing submodules branch

Also check for existing PRs for the same user & branch before opening a new PR
Merge pull request #65 from sbesson/updatesubmodules_openpr

Implement logic to open PR after pushing submodules branch
Add Makefile for cleaning up
Permit None gh argument to GitRepository

Not having a github.Github object prevents remote
invocation, but also significantly speeds up
execution. This may need further refactoring
such as a subclass, etc for other commands.
Add call_no_wait method

As seen before, calling popen.wait() when
stdout or stderr is set leads to processes
hanging.
Minor refactoring in prep for UnrebasedPrs
Add UnrebasedPRs command

Command is used to compare two branches and look for
and merge commits which match the Github-style pattern.
Then, the git notes under ref "see_also/BRANCH" are
consulted to see if the PR has a rebase-pointer. If yes,
then it is ignored. Otherwise, the PR is printed to either
stdout or to a file. The two files from each invocation can
be used (via the --parse flag) to add notes so that they will
be filtered on subsequent invocations.
Allow n/a entries for PRs

For PRs which are intended to only be on one branch
(like bumping the version number), there needs to be
a way to set the see_also note to "n/a". That's now
done by placing "n/a" on a line to match the one-off
PR.
Handle non-merge commits as well
Add comment to open submodules update PR if generated by Hudson

- Replace check_open_pr() by get_open_pr() and return found PullRequest
- Add create_comment() method to PullRequest obejct
Allow user to specify authorization scopes when creating token
Add unit tests for default scopes parameters and add to travis build
Merge pull request #68 from joshmoore/unrebased-prs

UnrebasedPRs command
Add initial filter check when finding PRs candidates

This change should speed up the update-submodule command and avoid querying all the pull request of each repository.
Merge pull request #69 from sbesson/update-submodules-comment

Add comment to submodules PR if new branch is pushed
Merge pull request #71 from sbesson/submodules_speed

Add initial filter check when finding PRs candidates
Move get_submodule_paths() to a standalone method
Add option to specify configuration file in git_config()
Add option to replace submodules URL using login name

If update_gitmodules is True, the submodules URL registered in the .gitmodules are modified using the login name of the Github connection.
Recursively pass the new update_gitmodules option