Extend CliGitAPIImpl of getRemoteUrl to accept "blank" git dir

Match the JGit implementation, which accepts an empty string or a null
as an indicator to use the current working directory.
Construct a Repository object instead of using FileBasedConfig for JGit config

All my attempts to read useful results through the FileBasedConfig
implementation failed.  Using a RepositoryBuilder with the GIT_DIR
argument to set the working tree allows one or more of the test cases
to pass.

There are still differences between the JGit and CliGit
implementations, but this reduces those differences.
Add getRemoteUrl tests and plave getDefaultRemote in a new test

The getRemoteUrl tests are checking the modifications made in the most
recent changes to getRemoteUrl in both CliGitAPIImpl and JGitAPIImpl.
Merge branch 'master-fix-getRemoteUrl-2-args' into master-work

Conflicts:
	src/test/java/org/jenkinsci/plugins/gitclient/GitAPITestCase.java