Fix several esoteric errors related to AJAX unit tests for comments:

* `wp_ajax_get_comments()` relies on the `$post_id` global - even though `$_POST['p']` is passed to every action in the test methods. If `$post_id` is still lingering in between tests and doesn't match `p` in the request, the cap check might pass while the queries for comments will blow up. I added `unset( $GLOBALS['post_id'] )` to `Tests_Ajax_GetComments::setUp()`.
* If the global `$post_id` is empty, but `$_REQUEST['p']` is not, `$post_id` is now set to `absint( $_REQUEST['p'] )` and sanity-checked in `wp_ajax_get_comments()`.
* `map_meta_cap()` always assumes that `get_comment()` succeeds when checking for the `edit_comment` cap. It doesn't. I added sanity checks in a few places where it will break early if `get_post()` or `get_comment()` are empty.
* `wp_update_comment()` always assumes `get_comment()` succeeds. It doesn't. I added a check for empty.

All AJAX unit tests run and pass in debug mode. All general unit tests pass against these changes.

Fixes #25282.


Built from https://develop.svn.wordpress.org/trunk@25438


git-svn-id: http://core.svn.wordpress.org/trunk@25360 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Remove unnecessary printf(). fixes #25321.

Built from https://develop.svn.wordpress.org/trunk@25439


git-svn-id: http://core.svn.wordpress.org/trunk@25361 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Move to JSON for three api.wordpress.org endpoints. see #25311.

Built from https://develop.svn.wordpress.org/trunk@25441


git-svn-id: http://core.svn.wordpress.org/trunk@25362 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Move to JSON for the plugin and theme update-check API endpoints. see #25311.

Built from https://develop.svn.wordpress.org/trunk@25442


git-svn-id: http://core.svn.wordpress.org/trunk@25363 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Don't allow critical scripts to be deregistered on wp-login.php, just as we do in the rest of the admin.

props atimmer.
fixes #25017.

Built from https://develop.svn.wordpress.org/trunk@25443


git-svn-id: http://core.svn.wordpress.org/trunk@25364 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Introduce a img_caption_shortcode_width filter for controlling the inline style of the image caption shortcode.

props iandunn for the initial patch.
fixes #14380.

Built from https://develop.svn.wordpress.org/trunk@25444


git-svn-id: http://core.svn.wordpress.org/trunk@25365 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Introduce wp_get_sites(), a long-awaited replacement for get_blog_list().

props jeremyfelt.
see #14511.

Built from https://develop.svn.wordpress.org/trunk@25445


git-svn-id: http://core.svn.wordpress.org/trunk@25366 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Proper treatment of the 'archived' field in wp_get_sites(). see #14511.

Built from https://develop.svn.wordpress.org/trunk@25446


git-svn-id: http://core.svn.wordpress.org/trunk@25367 1a063a9b-81f0-0310-95a4-ce76da25c4cd
WordPress Core Automatic Updates: Remove an accidental closure which isn't supported in PHP 5.2. See #22704

Built from https://develop.svn.wordpress.org/trunk@25447


git-svn-id: http://core.svn.wordpress.org/trunk@25368 1a063a9b-81f0-0310-95a4-ce76da25c4cd