[FIXED JENKINS-22400] option to set submodules update timeout

Cherry pick from 7dab96f8b5b1ea95e3a92123e6424376d7fa1036
Update credentials dependency to 1.18
Update mockito dependency to 1.10.9
[Fixed JENKINS-25313] fix null pointer exception when last repo or branch deleted
Update mockito dependency to 1.10.10
[Fix JENKINS-25313]  avoid null pointer if repository not defined
[fix JENKINS-20531], catch GitException during fetch, throw AbortException

The AbortException is already thrown from another area of the same
method, so throwing the AbortException is likely no worse than the
existing AbortException which is thrown (instead of GitException).
Add AbortException comment for retry

Attempt to avoid losing the fix for JENKINS-20531 in future
changes. No easy way to create a test which asserts an error is thrown
when fetch() throws an exception, so insert the comment as a weaker
defense against regression.
Simplify the abort exception case
Notify listener of AbortException cause, and include message in AbortException
Allow remotePolling on single (qualified) branch with multiple
repositories
[FIXED JENKINS-25414]
Update to git-client-plugin 1.11.1
Merge pull request #267 from wannessels/remotePollingFix

Allow remotePolling on single (qualified) branch with multiple repositories
JENKINS-25048: Added filters check for notifyCommit event