Initial cut at layerless windows.

This has the minimal support working. You can create layerless
windows add/remove them from a hierarchy, add children with layers and
everything is kept in sync (including bounds).

Painting has not been wired up yet.

The interesting bit of this change is that Layer and Window bounds are
no longer in sync. This is necessitated by Layer's having to be
parented to Layers. To avoid changing bounds() to dynamically figure
out the real bounds I made Window cache the bounds.

BUG=none
TEST=none
R=ben@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@238408 0039d316-1c4b-4281-b951-d872f2087c98
Refactor how the MediaStreamManager::DeviceMonitor is started.

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

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