[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
Updated w.r.t. pull request review comments
Fix test
Fixing JENKINS-22750, regression introduced in JENKINS-21394
Fixed test and refined behaviour
[FIX JENKINS-22867] Fix localization and relative links.
Fix warnings in ListView
[FIXED JENKINS-22967] Introduce directly modifiable views
[FIX JENKINS-22028] Allow MarkupFormatter without enabling security

Given the current default of 'Escaped HTML', it makes no sense
to require users to 'Enable Security' to set up a less secure
alternative. So show it on the global security configuration page
on top level.
[JENKINS-22967] Polish new api
Merge branch 'JENKINS-22028' of github.com:daniel-beck/jenkins
[JENKINS-22028] Noting merge of #1235.
Merge branch 'JENKINS-22867' of github.com:daniel-beck/jenkins
[JENKINS-22867] Noting merge of #1232.
creating an RC branch