Changes to use multi-stream API endpoint.

Also improves testing of createStreamConsumer()
Refactors StreamConsumer.arrayDifference to use Array.filter()
Changes to reflect new tenacious init-connection callback semantics.
Enables status messages on the DS stream and uses them to determine when we've successfully subscribed to a stream.
Drops subscribe delay and resubscribe()

Now that tenacious start() won't resolve its promise until it's received a connection response, we can drop the subscribe delay. And now that we can subscribe to streams while opening the connection, we no longer need resubscribe() to do this.