function IFrameMessageReceiver() {
  window.addEventListener('message', this.onMessage_.bind(this), false);
}
Sits in an embedded iframe, receiving messages from a containing
iFrame. This facilitates an API which provides the following features:

   Playing and pausing content.
   Adding hotspots.
   Sending messages back to the containing iframe when hotspot is clicked
   Sending analytics events to containing iframe.

Note: this script used to also respond to synthetic devicemotion events, but
no longer does so. This is because as of iOS 9.2, Safari disallows listening
for devicemotion events within cross-device iframes. To work around this, the
webvr-polyfill responds to the postMessage event containing devicemotion
information (sent by the iframe-message-sender in the VR View API).