bluetooth: Initial WebBluetooth & WebBluetoothError.

In three patches the initial mock implementation of bluetooth.requestDevice
is implemented across blink & content. This allows layout tests to specify the
data responses the mock implemented in content should return via
testRunner.SetBluetoothMockDataSet and call bluetooth.requestDevice with the
expected results.

crrev.com/650613005 blink::WebBluetooth & WebBluetoothError interfaces.
crrev.com/702593002 content::WebBluetoothImpl & testRunner.SetBluetoothMockDataSet.
crrev.com/686813003 blink::BluetoothDiscovery::requestDevice implemented.

BUG=420284

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

git-svn-id: svn://svn.chromium.org/blink/trunk@184839 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fixing two layout tests on Android broken by enabling virtual-viewport

The svg test turned out to simply need a rebaseline as the scrollbars should
no longer show up in layout tests.

The autoresize test was off by 1 pixel. This was happening because in
virtual viewport mode we size the main FrameView's width to the content
size and the height by the aspect ratio. This meant that the height would
have some tiny error in some aspect ratios which would get blown up to a
full pixel when we returned an expandedIntSize in
PageScaleConstraintsSet::mainFrameSize. This is fixed by explicitly setting
the FrameView size equal to the viewport size if the content width matches
the viewport width.

BUG=428189

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

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