In addition to simply receiving and display an MJPEG stream--the player must be able to:
* Expose all headers received with each frame. In addition to the standard content-type header sent with each frame, the stream will also contain several arbitrary headers. The script must be able to parse these headers and expose them in an array or object(s) to the script and must be able to fire an event when the value of a header changes from the previous time that header was received.
* Be able to cleanly detect and recover from stream interruption and fire connectivity events (eg: tell the script when the stream is lost and when it is regained)
* The script must work on WebKit browsers, specifically on iOS devices and Chrome.