Implementing desktop switching functionality, showing & hiding windows of other users, allowing to override

This CL implements a new class which keeps track of user owned windows, showing and hiding them as the physical user switches between these logical user desktops.

The new class offers the following features:
- It has a global singleton which will instantiate the object upon first use (when multi user is activated).
- It automatically detects..
   * started V2 applications and marks them according to user.
   * started browsers and marks them according to user (this also works with tab dragging and so).
   * Closure of windows and destroys stored owner information.
- It allows to override the temporary target desktop.
- It remembers the show state and restores it accordingly when switched to the active's user's desktop.
- It uses the normal show/hide functionality of windows for the simplest way to make this possible.
- It will detect "incorrect" show / hide invocations and deny them.

Note:
- If dialogs (which are not parented and do not contain browser content) are presented, they will show on all desktops regardless (which is possibly fine? Well - we'll see.)
- Some panels might not be covered yet. These need either be caught by other observers - or by calling chrome::MultiUserWindowManager::GetInstance()->SetWindowOwner(..).
- Transferring of windows from one desktop to another can be done by calling chrome::MultiUserWindowManager::GetInstance()->ShowWindowForUser(..)

BUG=303339
TEST=unittest, visual

Review URL: https://codereview.chromium.org/26086002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227785 0039d316-1c4b-4281-b951-d872f2087c98
Remove remaining Skia suppressions.

TBR=robertphillips@google.com
BUG=304146

Review URL: https://codereview.chromium.org/26173005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227786 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 227785
SVN changes up to revision 227786
Run strip via xcrun.

In Xcode 5, strip is no longer in SYSTEM_DEVELOPER_BIN_DIR. It is only in
DT_TOOLCHAIN_DIR. I also checked Xcode 4.6.1 and found that DT_TOOLCHAIN_DIR
was also set there, and strip is in both SYSTEM_DEVELOPER_BIN_DIR and
DT_TOOLCHAIN_DIR in that version.

Environment variables as set when Xcode is installed at /Applications/Xcode.app:

SYSTEM_DEVELOPER_BIN_DIR=/Applications/Xcode.app/Contents/Developer/usr/bin
DT_TOOLCHAIN_DIR=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefa
ult.xctoolchain

xcrun should be able to find strip without having to resort to manual
environment interpretation.

R=thakis@chromium.org

Review URL: https://codereview.chromium.org/24352006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227787 0039d316-1c4b-4281-b951-d872f2087c98
[NaCl SDK] Add the new build-only SDK bots to the default set.

This will allow us to get some metrics on their
timings and flakiness before trying the move
them onto the main waterfall.

BUG=302579
R=noelallen@chromium.org

Review URL: https://codereview.chromium.org/26692003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227788 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 227788