obfuscated peerconnection provider

This implements the "direct one-device" proposal from the design doc:
https://docs.google.com/a/google.com/document/d/1VV4Qo4zqtJfHzoNl2Bxr6f9YjNObjMfqAZC-xRNt1tY/edit#heading=h.ykul00b73bd6

Summary of changes:
* move to `uproxy-lib` v9+
* adds `churn`, an obfuscating version of `uproxypeerconnection`

Note that the `turn` and `net` modules are completely unused.

Lots more to do here: move to the new logging module, fail if the endpoints aren't what we expect, and error propagation, to name a few.

Tested with `grunt test` and by Wireshark-ing the chat app.