Pulls common compositor integration stuff (draw scheduling, mostly) into ui::Compositor for two reasons:

1. so it can be used in other RootWindow-like things (e.g. v2 tests)
2. so the RootWindow can be made to optionally have a compositor, to support nested RootWindows.

R=piman@chromium.org, sky@chromium.org
BUG=none

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@229242 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 229242
Separate ash stuff from aura watchlists

TBR=sky@chromium.org
BUG=

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

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