Add TLS support and Facebook chat demo (only for firefox)

Add TLS support and a Facebook chat demo.  This only works for Firefox for now, and will break Chrome until chrome.sockets.tcp.setPaused is updated (https://code.google.com/p/chromium/issues/detail?id=403076).
Adding @iislucas @mollyling to this who know more about the issue.  My understanding is that in order to call secure a TCP socket, it needs to be connected using the domain name, rather than the IP address, or else we get a -200 CERT_COMMON_NAME_INVALID error on chrome, described at http://src.chromium.org/svn/trunk/src/net/base/net_error_list.h as meaning:
```
// The server responded with a certificate whose common name did not match
// the host name.  This could mean:
//
// 1. An attacker has redirected our traffic to his server and is
//    presenting a certificate for which he knows the private key.
//
// 2. The server is misconfigured and responding with the wrong cert.
//
// 3. The user is on a wireless network and is being redirected to the
//    network's login page.
//
// 4. The OS has used a DNS search suffix and the server doesn't have
//    a certificate for the abbreviated name in the address bar.
```

Is there some way we could have our TCP socket code use the domain name, but still do an IP lookup for other uses in node-xmpp?

Also if you run the google demo on firefox from this branch and login using your UW account do you get this error?  Or would this error only occur in the future with a new social provider using hostname cs.washington.edu?