Index: wp-includes/admin-bar.php
===================================================================
--- wp-includes/admin-bar.php	(revision 19556)
+++ wp-includes/admin-bar.php	(working copy)
@@ -125,8 +125,37 @@
 }
 
 /**
- * Add the "My Account" menu and all submenus.
+ * Add the "My Account" item.
  *
+ * @since 3.3.0
+ */
+function wp_admin_bar_my_account_item( $wp_admin_bar ) {
+	$user_id      = get_current_user_id();
+	$current_user = wp_get_current_user();
+	$profile_url  = get_edit_profile_url( $user_id );
+
+	if ( ! $user_id )
+		return;
+
+	$avatar = get_avatar( $user_id, 16 );
+	$howdy  = sprintf( __('Howdy, %1$s'), $current_user->display_name );
+	$class  = empty( $avatar ) ? '' : 'with-avatar';
+
+	$wp_admin_bar->add_menu( array(
+		'id'        => 'my-account',
+		'parent'    => 'top-secondary',
+		'title'     => $howdy . $avatar,
+		'href'      => $profile_url,
+		'meta'      => array(
+			'class'     => $class,
+			'title'     => __('My Account'),
+		),
+	) );
+}
+
+/**
+ * Add the "My Account" submenu items.
+ *
  * @since 3.1.0
  */
 function wp_admin_bar_my_account_menu( $wp_admin_bar ) {
@@ -134,53 +163,41 @@
 	$current_user = wp_get_current_user();
 	$profile_url  = get_edit_profile_url( $user_id );
 
-	if ( 0 != $user_id ) {
-		/* Add the "My Account" menu */
-		$avatar = get_avatar( $user_id, 16 );
-		$howdy  = sprintf( __('Howdy, %1$s'), $current_user->display_name );
-		$class  = empty( $avatar ) ? '' : 'with-avatar';
+	if ( ! $user_id )
+		return;
 
-		$wp_admin_bar->add_menu( array(
-			'id'        => 'my-account',
-			'parent'    => 'top-secondary',
-			'title'     => $howdy . $avatar,
-			'href'      => $profile_url,
-			'meta'      => array(
-				'class'     => $class,
-				'title'     => __('My Account'),
-			),
-		) );
+	$wp_admin_bar->add_group( array(
+		'parent' => 'my-account',
+		'id'     => 'user-actions',
+	) );
 
-		/* Add the "My Account" sub menus */
+	$user_info  = get_avatar( $user_id, 64 );
+	$user_info .= "<span class='display-name'>{$current_user->display_name}</span>";
 
-		$user_info  = get_avatar( $user_id, 64 );
-		$user_info .= "<span class='display-name'>{$current_user->display_name}</span>";
+	if ( $current_user->display_name !== $current_user->user_nicename )
+		$user_info .= "<span class='username'>{$current_user->user_nicename}</span>";
 
-		if ( $current_user->display_name !== $current_user->user_nicename )
-			$user_info .= "<span class='username'>{$current_user->user_nicename}</span>";
-
-		$wp_admin_bar->add_menu( array(
-			'parent' => 'my-account',
-			'id'     => 'user-info',
-			'title'  => $user_info,
-			'href'   => $profile_url,
-			'meta'   => array(
-				'tabindex' => -1
-			),
-		) );
-		$wp_admin_bar->add_menu( array(
-			'parent' => 'my-account',
-			'id'     => 'edit-profile',
-			'title'  => __( 'Edit My Profile' ),
-			'href' => $profile_url,
-		) );
-		$wp_admin_bar->add_menu( array(
-			'parent' => 'my-account',
-			'id'     => 'logout',
-			'title'  => __( 'Log Out' ),
-			'href'   => wp_logout_url(),
-		) );
-	}
+	$wp_admin_bar->add_menu( array(
+		'parent' => 'user-actions',
+		'id'     => 'user-info',
+		'title'  => $user_info,
+		'href'   => $profile_url,
+		'meta'   => array(
+			'tabindex' => -1,
+		),
+	) );
+	$wp_admin_bar->add_menu( array(
+		'parent' => 'user-actions',
+		'id'     => 'edit-profile',
+		'title'  => __( 'Edit My Profile' ),
+		'href' => $profile_url,
+	) );
+	$wp_admin_bar->add_menu( array(
+		'parent' => 'user-actions',
+		'id'     => 'logout',
+		'title'  => __( 'Log Out' ),
+		'href'   => wp_logout_url(),
+	) );
 }
 
 /**
Index: wp-includes/css/admin-bar-rtl.dev.css
===================================================================
--- wp-includes/css/admin-bar-rtl.dev.css	(revision 19556)
+++ wp-includes/css/admin-bar-rtl.dev.css	(working copy)
@@ -107,12 +107,12 @@
 /**
  * My Account
  */
-#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-my-account-default > li {
+#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions > li {
 	margin-right: 88px;
 	margin-left: 16px;
 }
 
-#wp-admin-bar-my-account-default > li > .ab-item {
+#wp-admin-bar-user-actions > li > .ab-item {
 	padding-left: 0;
 	padding-right: 8px;
 }
Index: wp-includes/css/admin-bar.dev.css
===================================================================
--- wp-includes/css/admin-bar.dev.css	(revision 19556)
+++ wp-includes/css/admin-bar.dev.css	(working copy)
@@ -323,16 +323,16 @@
 	min-width: 270px;
 }
 
-#wpadminbar #wp-admin-bar-my-account-default > li {
+#wpadminbar #wp-admin-bar-user-actions > li {
 	margin-left: 16px;
 	margin-right: 16px;
 }
 
-#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-my-account-default > li {
+#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions > li {
 	margin-left: 88px;
 }
 
-#wp-admin-bar-my-account-default > li > .ab-item {
+#wp-admin-bar-user-actions > li > .ab-item {
 	padding-left: 8px;
 }
 
@@ -489,6 +489,14 @@
 }
 
 /**
+ * Site Menu
+ */
+#wpadminbar #wp-admin-bar-appearance {
+	border-top: none;
+	margin-top: -12px;
+}
+
+/**
  * ICONS
  */
 #wpadminbar .ab-icon {
Index: wp-includes/class-wp-admin-bar.php
===================================================================
--- wp-includes/class-wp-admin-bar.php	(revision 19556)
+++ wp-includes/class-wp-admin-bar.php	(working copy)
@@ -363,8 +363,9 @@
 
 	public function add_menus() {
 		// User related, aligned right.
-		add_action( 'admin_bar_menu', 'wp_admin_bar_search_menu', 10 );
-		add_action( 'admin_bar_menu', 'wp_admin_bar_my_account_menu', 20 );
+		add_action( 'admin_bar_menu', 'wp_admin_bar_my_account_menu', 0 );
+		add_action( 'admin_bar_menu', 'wp_admin_bar_search_menu', 4 );
+		add_action( 'admin_bar_menu', 'wp_admin_bar_my_account_item', 7 );
 
 		// Site related.
 		add_action( 'admin_bar_menu', 'wp_admin_bar_wp_menu', 10 );
