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
Merge branch 'config-userid-case-sensitivity' of github.com:stephenc/jenkins
[FIXED JENKINS-22247] Noting merge of #1161.