Compress scripts/styles: 3.4-alpha-20294.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20294 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Create WP_Customize_Control to separate the process of rendering a control from fetching, previewing, and saving its values. see #19910.

Many-to-many mapping between settings and controls.
* Settings and controls have been separated in both the PHP (WP_Customize_Setting, WP_Customize_Control) and the JS (wp.customize.Setting, wp.customize.Control).
* While most settings are tied to a single control, some require multiple controls. The 'header_textcolor' control is a good example: to hide the header text, header_textcolor is set to 'blank'.

Add 'Display Header Text' control.

A handful of miscellaneous bugfixes along the way.

Notes:
* Controls should be separated out a bit more; juggling type-specific arguments in the switch statement is rather inelegant.
* Page dropdowns are currently inactive and need to be re-linked.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20295 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Compress scripts/styles: 3.4-alpha-20296.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20296 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Theme Customizer: Fix postMessage for background_color. The method parameter affects settings, not controls. see #19910.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20297 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Compress scripts/styles: 3.4-alpha-20298.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20298 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Theme Customizer: Sanitize selectors by transforming square brackets into dashes. see #19910. 

This both better conforms to the CSS spec and prevents bugs from occurring in JavaScript selector engines.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20299 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Theme Customizer: Properly pass arguments by reference to WP_Customize_Setting->multidimensional(). see #19910, [20136], #20163.

This is necessary for WP_Customize_Setting->multidimensional_replace() to work properly on multidimensional arrays (which was, as the name indicates, the point of the function in the first place).

git-svn-id: http://svn.automattic.com/wordpress/trunk@20300 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Theme Customizer: Properly bind the 'upload new' and 'remove image' actions in the image picker. see #19910.

This occurred because we weren't calling UploadControl.ready (where the actions are declared and the uploader is initialized) in ImageControl.ready.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20301 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Theme Customizer: Add data binding to page dropdown controls. Add WP_Customize_Control->get_link() to return the data attribute string. see #19910.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20302 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Theme Customizer: Move 'Site Title/Tagline' section to the top of the list. Add specific priorities to all sections. see #19910.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20303 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Compress scripts/styles: 3.4-alpha-20304.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20304 1a063a9b-81f0-0310-95a4-ce76da25c4cd
XMLRPC: Add the object ID to the return data of wp.uploadFile/metaWeblog.newMediaObject so that it can be used in other api calls e.g. setting featured image see #15098 props maxcutler


git-svn-id: http://svn.automattic.com/wordpress/trunk@20305 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Theme Customizer: Fire WP_Customize->customize_preview_init on wp_loaded instead of template_redirect. props nacin, see #19910.

Certain customize settings (such as show_on_front and other static front page features) need to be overridden before template_redirect.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20306 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Do not process <pre> tags with wpautop, replace them with placeholders, process the rest of the content and then put them back. Part props kurtpayne, see #19855

git-svn-id: http://svn.automattic.com/wordpress/trunk@20307 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Improve _fix_attachment_links(), replace attachment URLs with the real permalink only for published posts, re-save only when there are changes, see #13429

git-svn-id: http://svn.automattic.com/wordpress/trunk@20308 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Wrap attachment delete link in <p> for semantics and alignment. props aaroncampbell, lancewillett. fixes #19785

git-svn-id: http://svn.automattic.com/wordpress/trunk@20309 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Revert label change in [20282]. see #18311.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20310 1a063a9b-81f0-0310-95a4-ce76da25c4cd
WP_Filesystem: PemFTP: Detect dl() being disabled in order to avoid any fatals which may be produced when the Sockets extension is not available. Props to kurtpayne for initial patch, Fixes #20187


git-svn-id: http://svn.automattic.com/wordpress/trunk@20311 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Introduce WP_Theme->exists() to check if the queried theme actually exists. WP_Theme->exists() is a subset of errors() -- a theme with errors may still exist, but a theme that does not exist has an error of theme_not_found. wp_get_theme() now returns false if the theme does not exist. Improve scandir() and get_files() logic. see #20103.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20312 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Rewrite theme-editor.php to use the new WP_Theme API. see #20103.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20313 1a063a9b-81f0-0310-95a4-ce76da25c4cd