Would make jenkins 920 more straightforward.
Work in progress
- Functions.getCLICommands; could maybe keep binary compatibility while breaking source compatibility?
- Functions.advertiseHeaders would ideally not send X-*CLI* headers
- Various @CLIMethod need to be refactored into independent CLICommand: JENKINS-22969
- Slave.JnlpJar.getURL purpose unclear
- Jenkins.doCli must be made into an UnprotectedRootAction