Add support to Battery Status API in blink.

This patch adds basic Battery Manager to Navigator with default battery
status values and the test enables to test if those values are passed
correctly.

Intent-to-Implement link: https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/fzoG6Phr09k/dnAEzkgMA1YJ

BUG=122593

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

git-svn-id: svn://svn.chromium.org/blink/trunk@168632 bbb929c8-8fbe-4397-9dbb-9b2b20218538
PartitionAlloc: support in-place resize of directly mapped allocation

In partitionReallocGeneric(), if both the current size and the new size
are in the direct mapped range, attempt to resize the allocation in place.
When downsizing, this is done by decommitting pages and making them
inaccessible.  When upsizing a previously downsized allocation to a size
not larger than its original size, we make the pages accessible again.

R=cevans@chromium.org
BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@168633 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Re-land "Drop background color optimization for composited layers"

The original CL r168245 was reverted by r168317 because of crashes.
It's because r168245 removes null-check of document().documentElement()->renderer()
in updating-compositing-descendant-geometry process because the CL assumed all
elements own renderer at that time. However, it's not true on Mac.

So this CL does not remove the null-check to land.

BUG=114658, 340691
R=alokp@chromium.org, enne@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@168634 bbb929c8-8fbe-4397-9dbb-9b2b20218538