Adjuncts do not include CSS correctly for removable dom fragments
Adjuncts do not include CSS correctly for removable dom fragments

- I think it only works by accident with script tags
- When the adjunct is initially included the script and css elements are injected at the point where the st:adjunct
  tag is first referenced.
- Thus these tags form part of the DOM that can be removed (e.g. when part of a repeatable / hetero list)
- Because the script is executed, removing the DOM node cannot un-execute the script, so script tags are safe
- Removing the css's link tag, however, removes the styling... and the adjunct manager doesn't know.
- What this hack does is inject the CSS at the end of the DOM's head tag (yes triggering a reflow) but only
  if the CSS link is not present already. The JavaScript tag (because we are bypassing st:adjunct) is conditionally
  appended to the DOM's body so that it can be fetched while other scripts continue executing.

To see the bug this fixes:

- Create a job with the GIT SCM and a couple of SCM locations and some credential parameters
- Save the job
- Load the job
- Remove the first credential parameter, now all the credential tags loose the styling (width:auto on the drop-down) and the Add button overflows to the next line

jenkinsci/credentials-plugin,stephenc/credentials-plugin,MarkEWaite/credentials-plugin,roccivic/credentials-plugin,roccivic/credentials-plugin,MarkEWaite/credentials-plugin,roccivic/credentials-plugin,MarkEWaite/credentials-plugin,jacob-keller/credentials-plugin,jacob-keller/credentials-plugin,roccivic/credentials-plugin,jacob-keller/credentials-plugin,jenkinsci/credentials-plugin,stephenc/credentials-plugin,stephenc/credentials-plugin,stephenc/credentials-plugin,jacob-keller/credentials-plugin,jenkinsci/credentials-plugin