diff --git a/index.bs b/index.bs
index becaa2f..561a587 100644
--- a/index.bs
+++ b/index.bs
@@ -479,6 +479,35 @@ those. A request and a response includes a request ID which is an unsigned
integer chosen by the requester. Responses must include the request ID of the
request they are associated with.
+Type Key Backwards Compatibility
+--------------------------------
+
+As messages are modified or extended over time, certain rules must be followed
+to maintain backwards compatibiilty with agents that understand older versions
+of messages.
+
+1. If a required field is added to or removed from a message (either to/from the
+message directly or indirectly through the field of a field), a new type key
+must be assigned to the message. Is is effectively a new message and must not
+be sent unless the receiving agent is known to understand the new type key.
+
+1. If an optional field is added to a message (either to the message directly
+or indirectly through the field of a field), the type key may remain unchanged
+if the behavior of older receiving agents that do not understand the added field
+is compatible with newer sending agents that include the field.
+Otherwise, a new type key must be assigned.
+
+1. If an optional field is removed from a message (either from the message
+directly or indirectly through the field of a field), the type key may remain
+unchanged if the behavior of newer receiving agents that do not understand the
+removed field is compatible with older sending agents that include the field.
+Otherwise, a new type key must be assigned.
+
+1. Required fields may not be added or removed from array-based messages, such
+as audio-frame.
+
+
+
Authentication {#authentication}
================================
@@ -974,6 +1003,10 @@ requirements for a remote-playback-id.
ignore them and the controller will learn that it does not support them from
the [=remote-playback-start-response=] message.
+: remoting (optional)
+:: Parameters for starting a streaming session associated with this
+ remote playback. If not included, no streaming session is started.
+
When the receiver receives a [=remote-playback-start-request=] message, it should
send back a [=remote-playback-start-response=] message. It should do so quickly,
usually before the [=media resource=] has been loaded and instead give updates
@@ -985,6 +1018,18 @@ invalid-url). Additionally, the response must include the following:
: state
:: The initial state of the remote playback, as defined in
[[#remote-playback-state-and-controls]].
+
+: remoting (optional)
+:: A response to the started streaming session associatd with this remote playback.
+ If not included, no streaming session is started.
+
+If a streaming session is started, streaming messages such a
+streaming-session-modify-request and video-frame can be used for the streaming
+session as if the streaming session had been started with
+streaming-session-start-request and streaming-session-start-response. The
+streaming session may be terminated before the remote playback is terminated,
+but if the remote playback is terminated first, the streaming session associated
+with it is automatically terminated.
If the controller wishes to modify the state of the remote playback (for
example, to pause, resume, skip, etc), it may send a
diff --git a/index.html b/index.html
index 6d10c46..68cf015 100644
--- a/index.html
+++ b/index.html
@@ -1214,7 +1214,7 @@
-
+