Add optional findbugs report generation

Generate findbugs XML report with mvn findbugs:check

Includes a findbugs exclude filter file

Uses findbugs maven settings as modeled by Stephen Connolly in the
literate build plugin.
Use @NonNull annotation of getRepository method

Better describes the contract between getRepository and its callers,
and reduces findbugs output by declaring that contract.
Check return value of File.delete, log warning if file not deleted

Logging a warning if a file is not deleted seems safe and will help
locate cases where files are not being properly removed.
Make TIMEOUT and USE_CLI final since they are values of properties
Declare CliGitAPIImpl.launcher transient in case class or subclass is serialized
Remove uncalled private method getGitCredentialsURL(String, String)
Add serialVersionUID to two classes to fix findbugs warnings
Remove unread field from ProgressMonitor implementation

Fix findbugs warning
Fix check_headRev assertions to allow for changes on remote repo

The remote repository is cloned to the local mirror and then the local
mirror is used for most operations.  While the local mirror is being
used, the remote repository may be updated and change its head
revision.  That causes the remote getHeadRev test to fail sporadically
depending on whether the local mirror copy matches the remote.

Rather than have those seemingly random failures, the remote
getHeadRev test has been reworked to use a "git ls-remote" command to
query the remote repository.  The results of that query within the
test are used for the assertions in that test.  That reduces the risk
of test failure to the relatively narrow time window within the
specific test.
Filter the JGitAPIImpl load of known null value warning - findbugs is wrong
Invalid credentials vs. bad hostnames are hard to differentiate right now.  Exposing the stack
trace error to provide more context.
Merge pull request #98 from rogerhu/jenkins_exception

Invalid credentials vs. bad hostnames are hard to differentiate right now.  Exposing the stack trace error to provide more context.
Merge pull request #96 from MarkEWaite/master-fix-getHeadRev-test

Fix check_headRev assertions to allow for changes on remote repo
Merge remote-tracking branch 'mark/master-add-findbugs'

Conflicts:
	src/main/java/org/jenkinsci/plugins/gitclient/JGitAPIImpl.java