[FIX JENKINS-23041] Fix systemInfo for offline slaves

- Don't show link in sidebar
- Make systemInfo page more robust when accessed via URL
[FIX JENKINS-18048] Fix link of SCMTriggerCause from UpstreamCause

- UpstreamCause now tries to initialize upstream causes with the
  correct build in onLoad
- SCMTriggerCause stores build reference and uses its URL to build
  absolute link to changelog
[FIX JENKINS-14538] Improve builds dir input validation
[JENKINS-14583] Move replacement into shared function for reuse
[FIXED SECURITY-133] Restrict access to SCMTrigger status page

The page shows the names and URLs of all jobs currently busy with
polling. This includes jobs users might not regularly be able to
access and might therefore reveal otherwise hidden information.
[FIXED JENKINS-18902] Exclude lower bound of range from changes
Merge branch 'master' into JENKINS-18048

Conflicts:
	core/src/main/java/hudson/triggers/SCMTrigger.java
[FIX JENKINS-22971] Show full project name when in folder.
[JENKINS-14583] Fix tests
[FIXED JENKINS-23636] Indicate node the job workspace is on
[FIXED JENKINS-22641] FileUtils.readFileToByteArray behavior has changed in the latest version of commons-io.
Remove a closeQuietly call.
Fix NPE when stream is already closed.
Simplify finally block.
[FIXED JENKINS-23893] Top level ListView is not updated when job is renamed/deleted
the trunk is toward 1.575-SNAPSHOT
Permit RunnerStack.peek to return null in case it is not in use (for example, from a workflow), so that we do not get an NPE when trying to run a task that asks for checkpoints.
https://trello.com/c/DoCMV6gB/31-runnerstack
[FIXED JENKINS-10234] Removed checkpoint from JUnitResultArchiver.
Simplified flag to use Boolean.getBoolean.
@CheckForNull