Test result page keeps identifying tests as age 1

If a test has not been viewed, the age will keep being 1.
This is because getFailedSince()/failedSince is lazy loaded.
Without having viewed the CaseResult that method is never
called and the prev.failedSince returns '0' which may or may
not be accurate.
http://jenkins.361315.n4.nabble.com/Problem-with-Age-column-on-Test-Results-tab-td3172208.html
[JENKINS-20739] Filter descriptors before adding them to hetero-list.

This allows implementations of DescriptorVisibilityFilter to hide items
with descriptors from users to prevent them from being added via the UI.

This is already implemented in /lib/hudson/newFromList/form.jelly, but
nowhere else.
Added logging when filtering descriptors.
Abstract username case sensitivity into an extension point
[JENKINS-22247] Provide an extension point to define user id case sensitivity contract

* Fix up bad merge
Use a dedicated descriptor
Updating the pull request in light of comments

- Removed the Legacy strategy completely
- Moved the strategy to an aspect of the security realm
- Separated the strategy for Users from Groups because... well it might be necessary for some
- Moved IdStrategy from inner class of User into top level class
[FIXED JENKINS-22395] Attempt to double-delete a Run probably caused by getNextBuild sometimes returning a build which was already deleted.
Remove repo file from RPM. https://issues.jenkins-ci.org/browse/JENKINS-22690
[FIXED JENKINS-22698] Add indicator that build queue is filtered.
Updated w.r.t. pull request review comments
Fix test
[FIXED JENKINS-22720] Only call getAllItems in recursive ListView
Fixing JENKINS-22750, regression introduced in JENKINS-21394
Fixed test and refined behaviour
[FIXED JENKINS-22839] Allow clearing log recorders.
[FIXED JENKINS-22840] Make ring buffer size configurable
Merge branch 'JENKINS-22840' of github.com:daniel-beck/jenkins
[JENKINS-22840] Noting merge of #1220.
Merge branch 'JENKINS-22839' of github.com:daniel-beck/jenkins