Creating multi profile animations for switching users and teleporting of windows.

This CL is adding window animations for the following multi profile related actions:
- switching the user
- teleporting of windows
- window ownership changes

The user switch animation is as follows:

Time:    ----->
Screen:  A         X         B

- The desktop cross dissolves between A -> B
- User A's windows fade out between A -> X
- User B's windows get faded in between X -> B
- User A's shelf gets hidden between A -> X
- The user icon in the system tray as well as the shelf configuration changes at 'X'.
- User B's shelf gets faded on between X -> B

So at time X the user would see a half way cross dissolved desktop and shared windows (if there are any).

Since there is no guarantee that there is an animation going from A -> X an additional timer was used to kick off the second animation portion.

Further gotchas:
- Animations of the individual shelf items were in the past incorrectly performed with another animator which produced a lag for some components (e.g. the activation bar lagged and / or there was a gap between icons in the tray and the screen border when playing the animation fast.
- Wallpaper loading was so delayed that the animations started after all other animations were done.

BUG=336639, 307279

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

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