Index: wp-admin/users.php
===================================================================
--- wp-admin/users.php	(revision 15953)
+++ wp-admin/users.php	(working copy)
@@ -12,7 +12,7 @@
 /** WordPress Registration API */
 require_once( ABSPATH . WPINC . '/registration.php');
 
-$wp_list_table = get_list_table('users');
+$wp_list_table = get_list_table('Users');
 $wp_list_table->check_permissions();
 
 $title = __('Users');
Index: wp-admin/edit-comments.php
===================================================================
--- wp-admin/edit-comments.php	(revision 15953)
+++ wp-admin/edit-comments.php	(working copy)
@@ -9,7 +9,7 @@
 /** WordPress Administration Bootstrap */
 require_once('./admin.php');
 
-$wp_list_table = get_list_table('comments');
+$wp_list_table = get_list_table('Comments');
 $wp_list_table->check_permissions();
 
 $doaction = $wp_list_table->current_action();
Index: wp-admin/admin-ajax.php
===================================================================
--- wp-admin/admin-ajax.php	(revision 15954)
+++ wp-admin/admin-ajax.php	(working copy)
@@ -51,19 +51,14 @@
 if ( isset( $_GET['action'] ) ) :
 switch ( $action = $_GET['action'] ) :
 case 'fetch-list' :
-	require_once( ABSPATH . '/wp-admin/includes/default-list-tables.php' );
-	// Temp
-	require_once( ABSPATH . '/wp-admin/includes/list-table-posts.php' );
 
-	$class = $_GET['list_args']['class'];
+	$wp_list_table = get_list_table( $_GET['list_args']['class'] );
+	if ( ! $wp_list_table )
+		die( '0' );
 
-	if ( class_exists( $class ) ) {
-		$current_screen = (object) $_GET['list_args']['screen'];
-		$wp_list_table = new $class;
-		$wp_list_table->ajax_response();
-	}
+	$current_screen = (object) $_GET['list_args']['screen'];
+	$wp_list_table->ajax_response();
 
-	die('0');
 	break;
 case 'ajax-tag-search' :
 	if ( !current_user_can( 'edit_posts' ) )
@@ -558,7 +553,7 @@
 	if ( isset($_POST['screen']) )
 		set_current_screen($_POST['screen']);
 
-	$wp_list_table = get_list_table('terms');
+	$wp_list_table = get_list_table('Terms');
 
 	$level = 0;
 	if ( is_taxonomy_hierarchical($taxonomy) ) {
@@ -622,7 +617,7 @@
 	if ( !current_user_can( 'edit_posts' ) )
 		die('-1');
 
-	$wp_list_table = get_list_table('comments');
+	$wp_list_table = get_list_table('Comments');
 	$wp_list_table->from_ajax = true;
 
 	$wp_list_table->prepare_items();
@@ -651,7 +646,7 @@
 	if ( !current_user_can( 'edit_post', $post_ID ) )
 		die('-1');
 
-	$wp_list_table = get_list_table('post-comments');
+	$wp_list_table = get_list_table('Post_Comments');
 
 	$wp_list_table->prepare_items();
 
@@ -676,7 +671,7 @@
 case 'replyto-comment' :
 	check_ajax_referer( $action, '_ajax_nonce-replyto-comment' );
 
-	$wp_list_table = get_list_table('comments');
+	$wp_list_table = get_list_table('Comments');
 	$wp_list_table->checkbox = ( isset($_POST['checkbox']) && true == $_POST['checkbox'] ) ? 1 : 0;
 
 	$comment_post_ID = (int) $_POST['comment_post_ID'];
@@ -757,7 +752,7 @@
 	$comments_status = isset($_POST['comments_listing']) ? $_POST['comments_listing'] : '';
 
 	$checkbox = ( isset($_POST['checkbox']) && true == $_POST['checkbox'] ) ? 1 : 0;
-	$wp_list_table = get_list_table( $checkbox ? 'comments' : 'post-comments' );
+	$wp_list_table = get_list_table( $checkbox ? 'Comments' : 'Post_Comments' );
 
 	ob_start();
 		$wp_list_table->single_row( get_comment( $comment_id ) );
@@ -905,7 +900,7 @@
 	}
 	$user_object = new WP_User( $user_id );
 
-	$wp_list_table = get_list_table('users');
+	$wp_list_table = get_list_table('Users');
 
 	$x = new WP_Ajax_Response( array(
 		'what' => 'user',
@@ -1204,7 +1199,7 @@
 	// update the post
 	edit_post();
 
-	$wp_list_table = get_list_table('posts');
+	$wp_list_table = get_list_table('Posts');
 
 	$mode = $_POST['post_view'];
 	$wp_list_table->display_rows( array( get_post( $_POST['post_ID'] ) ) );
@@ -1214,7 +1209,7 @@
 case 'inline-save-tax':
 	check_ajax_referer( 'taxinlineeditnonce', '_inline_edit' );
 
-	$wp_list_table = get_list_table('terms');
+	$wp_list_table = get_list_table('Terms');
 
 	$wp_list_table->check_permissions('edit');
 
Index: wp-admin/includes/class-wp-list-table.php
===================================================================
--- wp-admin/includes/class-wp-list-table.php	(revision 15954)
+++ wp-admin/includes/class-wp-list-table.php	(working copy)
@@ -804,10 +804,18 @@
 
 		$class = get_class( $this );
 
+		$core_classes = array( 'WP_Posts_Table', 'WP_Media_Table', 'WP_Terms_Table', 'WP_Users_Table',
+			'WP_Comments_Table', 'WP_Post_Comments_Table', 'WP_Links_Table', 'WP_Sites_Table', 'WP_MS_Users_Table',
+			'WP_Plugins_Table', 'WP_Plugin_Install_Table', 'WP_Themes_Table', 'WP_Theme_Install_Table' );
+
+		if ( in_array( $class, $core_classes ) )
+			$class = substr( $class, 3, -6 );
+
 		printf( "<script type='text/javascript'>list_args = %s;</script>\n",
 			json_encode( compact( 'screen', 'class' ) )
 		);
 	}
+
 }
 
 /**
@@ -815,17 +823,40 @@
  *
  * @since 3.1.0
  *
- * @param string $type The type of the list table
- * @return object
+ * @param string $class The type of the list table, which is the class name except for core list tables.
+ * @return object|bool Object on success, false if the class does not exist.
  */
-function get_list_table( $type ) {
+function get_list_table( $class ) {
 	require_once( ABSPATH . '/wp-admin/includes/default-list-tables.php' );
-	// Temp
-	require_once( ABSPATH . '/wp-admin/includes/list-table-posts.php' );
 
-	$class = 'WP_' . strtr( ucwords( strtr( $type, '-', ' ') ), ' ', '_' ) . '_Table';
-	$class = apply_filters( "get_list_table_$type", $class );
+	if ( require_list_table( $class ) )
+		$class = 'WP_' . $class . '_Table';
 
-	return new $class;
+	$class = apply_filters( "get_list_table_$class", $class );
+
+	if ( class_exists( $class ) )
+		return new $class;
+	return false;
 }
 
+/**
+ * Include the proper file for a core list table.
+ *
+ * Useful for extending a core class that would not otherwise be required.
+ *
+ * @since 3.1.0
+ *
+ * @param string $table The core table to include.
+ * @return bool Whether the table is a core table.
+ */
+function require_list_table( $table ) {
+	$core_tables = array( 'Posts', 'Media', 'Terms', 'Users', 'Comments', 'Post_Comments',
+		'Links', 'Sites', 'MS_Users', 'Plugins', 'Plugin_Install', 'Themes', 'Theme_Install' );
+	if ( in_array( $table, $core_tables ) )
+		require_once( ABSPATH . '/wp-admin/includes/list-table-' . strtolower( str_replace( '_', '-', $table ) ) . '.php' );
+	else
+		return false;
+	return true;
+}
+
+?>
\ No newline at end of file
Index: wp-admin/includes/meta-boxes.php
===================================================================
--- wp-admin/includes/meta-boxes.php	(revision 15953)
+++ wp-admin/includes/meta-boxes.php	(working copy)
@@ -461,7 +461,7 @@
 
 	wp_nonce_field( 'get-comments', 'add_comment_nonce', false );
 
-	$wp_list_table = get_list_table('post-comments');
+	$wp_list_table = get_list_table('Post_Comments');
 ?>
 
 <table class="widefat comments-box fixed" cellspacing="0" style="display:none;">
Index: wp-admin/includes/template.php
===================================================================
--- wp-admin/includes/template.php	(revision 15953)
+++ wp-admin/includes/template.php	(working copy)
@@ -329,7 +329,7 @@
 		return;
 	}
 
-	$wp_list_table = get_list_table('comments');
+	$wp_list_table = get_list_table('Comments');
 
 	list ( $columns, $hidden ) = $wp_list_table->get_column_info();
 	$hidden = array_intersect( array_keys( $columns ), array_filter( $hidden ) );
Index: wp-admin/edit-tags.php
===================================================================
--- wp-admin/edit-tags.php	(revision 15953)
+++ wp-admin/edit-tags.php	(working copy)
@@ -9,7 +9,7 @@
 /** WordPress Administration Bootstrap */
 require_once('./admin.php');
 
-$wp_list_table = get_list_table('terms');
+$wp_list_table = get_list_table('Terms');
 $wp_list_table->check_permissions();
 
 $title = $tax->labels->name;
Index: wp-admin/upload.php
===================================================================
--- wp-admin/upload.php	(revision 15953)
+++ wp-admin/upload.php	(working copy)
@@ -9,7 +9,7 @@
 /** WordPress Administration Bootstrap */
 require_once( './admin.php' );
 
-$wp_list_table = get_list_table('media');
+$wp_list_table = get_list_table('Media');
 $wp_list_table->check_permissions();
 
 // Handle bulk actions
Index: wp-admin/plugin-install.php
===================================================================
--- wp-admin/plugin-install.php	(revision 15953)
+++ wp-admin/plugin-install.php	(working copy)
@@ -9,7 +9,7 @@
 /** WordPress Administration Bootstrap */
 require_once('./admin.php');
 
-$wp_list_table = get_list_table('plugin-install');
+$wp_list_table = get_list_table('Plugin_Install');
 $wp_list_table->check_permissions();
 $wp_list_table->prepare_items();
 
Index: wp-admin/network/users.php
===================================================================
--- wp-admin/network/users.php	(revision 15953)
+++ wp-admin/network/users.php	(working copy)
@@ -9,7 +9,7 @@
 
 require_once( './admin.php' );
 
-$wp_list_table = get_list_table('ms-users');
+$wp_list_table = get_list_table('MS_Users');
 $wp_list_table->check_permissions();
 $wp_list_table->prepare_items();
 
Index: wp-admin/network/sites.php
===================================================================
--- wp-admin/network/sites.php	(revision 15953)
+++ wp-admin/network/sites.php	(working copy)
@@ -12,7 +12,7 @@
 if ( ! is_multisite() )
 	wp_die( __( 'Multisite support is not enabled.' ) );
 
-$wp_list_table = get_list_table('sites');
+$wp_list_table = get_list_table('Sites');
 $wp_list_table->check_permissions();
 
 $title = __( 'Sites' );
Index: wp-admin/plugins.php
===================================================================
--- wp-admin/plugins.php	(revision 15953)
+++ wp-admin/plugins.php	(working copy)
@@ -9,7 +9,7 @@
 /** WordPress Administration Bootstrap */
 require_once('./admin.php');
 
-$wp_list_table = get_list_table('plugins');
+$wp_list_table = get_list_table('Plugins');
 $wp_list_table->check_permissions();
 
 $action = $wp_list_table->current_action();
Index: wp-admin/edit.php
===================================================================
--- wp-admin/edit.php	(revision 15953)
+++ wp-admin/edit.php	(working copy)
@@ -9,7 +9,7 @@
 /** WordPress Administration Bootstrap */
 require_once( './admin.php' );
 
-$wp_list_table = get_list_table('posts');
+$wp_list_table = get_list_table('Posts');
 $wp_list_table->check_permissions();
 
 // Back-compat for viewing comments of an entry
Index: wp-admin/link-manager.php
===================================================================
--- wp-admin/link-manager.php	(revision 15953)
+++ wp-admin/link-manager.php	(working copy)
@@ -9,7 +9,7 @@
 /** Load WordPress Administration Bootstrap */
 require_once ('admin.php');
 
-$wp_list_table = get_list_table('links');
+$wp_list_table = get_list_table('Links');
 $wp_list_table->check_permissions();
 
 // Handle bulk deletes
Index: wp-admin/theme-install.php
===================================================================
--- wp-admin/theme-install.php	(revision 15953)
+++ wp-admin/theme-install.php	(working copy)
@@ -9,7 +9,7 @@
 /** WordPress Administration Bootstrap */
 require_once('./admin.php');
 
-$wp_list_table = get_list_table('theme-install');
+$wp_list_table = get_list_table('Theme_Install');
 $wp_list_table->check_permissions();
 $wp_list_table->prepare_items();
 
Index: wp-admin/themes.php
===================================================================
--- wp-admin/themes.php	(revision 15953)
+++ wp-admin/themes.php	(working copy)
@@ -9,7 +9,7 @@
 /** WordPress Administration Bootstrap */
 require_once('./admin.php');
 
-$wp_list_table = get_list_table('themes');
+$wp_list_table = get_list_table('Themes');
 $wp_list_table->check_permissions();
 
 if ( current_user_can('switch_themes') && isset($_GET['action']) ) {
