Add multiple-scms optional dependency
Fix matrix builds with multiple SCMs

This fixes a bug that causes Matrix Builds to fail when using two or
more Mercurial repositories (via the multiple-scms plugin).

Previously, each SCM tried to checkout the changeset from the first
Mercurial repository.  This checks for the presence of the
multiple-scms plugin and, if the build uses it, looks up the parent
changeset using multiple-scms.

I also modified the MatrixBuild tests to fail faster when builds fail
(added an await timeout).

JENKINS-18237
Merge pull request #55 from blt04/fix-matrix-multi

[FIXED JENKINS-18237] Fix matrix multiple scm builds