ENHANCEMENT: allow overridable JS/CSS minification

This allows someone to extends Requirements_Backend and plug in their own minification
of files, including CSS minification.  It also allows them to override whether or not
the header comment is written for each file.
Always load preview when in preview mode, not in edit mode
API New CMSForm class to allow validation responses in CMS (fixes #1777)

Thanks to @willmorgan for getting this discussion started
(see https://github.com/silverstripe/sapphire/pull/1814).
Consistent Form setters (returning $this on setHTMLID())
Min/max constraints for CMS dialog
Moved GridField table padding to buttons

Avoid double padding when no bottom buttons exist
.field.noborder style, use it in "Insert Media" dialog
Hide "delete" button in "Insert Media" dialog
Reduced URL field width in "Insert Media" to avoid wrap

450px width are often not available to the dialog (with all margins/paddings subtracted from the window).
Ensure the URL doesn't cause an unnecessary wrap. Ideally we can size this to the dialog width
automatically of course.
Tighten "Insert Media" dialog layout

Reduce space usage to fit into typical dialog dimensions without scrolling
Add new files in "Insert Media" at start of the list

Makes the change more obvious without requiring to scroll
to action origin (upload button) out of view
Show edit form in "Update Media" by default

Was showing collapsed UploadField row before which doesn't make a whole lot of sense.
Hide titlebar in "Insert Media" when updating images

It doesn't make sense to show it there, since the "delete"
action has no effect, the "edit" button only collapses (useless),
and the thumbnail duplicates.
Consistent dropdown styles between chosen.js and treedropdown

Removed trigger background. Incidentally this also makes it less
obvious that the trigger has too much padding on the right
(which I can't figure out ...)
Localization-resilient SCSS selector (fixes #1590)
Full URL on hover in UploadField detail screen

Works around possible truncation of the URL when it gets too long
Removed colons from field labels in "Insert Media" detail screen

We don't use them in other field labels either
Reduced line height for form field help text
Compressed layout in "Insert Media" detail screen

 - Same font size as other CMS UI
 - Smaller thumbnail height
 - Less label width and padding for file info
Center aligning GridField pagination input text