Add page visibility observer support for Device Orientation.

Stop firing 'deviceorientation' events when page becomes
invisible to save battery life on mobile devices.

The implementation is analogous to how Device Motion was
done. Some of the code was lifted into the common
superclass DeviceSensorEventController.

NOTE:
https://codereview.chromium.org/52943003/ should land before
this patch.

BUG=313340

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

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