Avoid hitting http connection limit with subapps

With this change, SockJS connections as used by Shiny Server represent
multiple logical connections multiplexed together. This allows subapps
to piggyback on top of their parent app's connection, avoiding
connectivity problems when 6 or more subapps are embedded.
Comments and cleanup
Fix bug preventing close events
Upgrade sockjs to patched version

Includes b88f9ea, which fixes sockjs/sockjs-node#143. This bug was
causing JJ's ggvis-demo Shiny doc to grey out after about 45 seconds
of inactivity.
Multiplex improvements

* Retire underlying SockJS connection when last channel is closed
* Logging (requires source change to enable--uncomment the contents
  of the debug() function)
* Ensure early channels (opened before SockJS connection is
  established) that are closed before the connection is open, stay
  closed
More compact protocol--avoid extra JSON encoding

Also make subapps print custom message log/alerts
Update comment
Merge pull request #71 from rstudio/bugfix/http-connections

Avoid hitting http connection limit with subapps
Merge remote-tracking branch 'origin/master'