fixes to peer-connection (avoid renegotiations)

* Moved to using better logging for datachannel.ts
* Added sourcemap for freedom
* Made peer-connection avoid bad renegotiation events (now starts negotiation by opening a data channel, so that the SDP headers always include data channels)
* Cleaned up chat sample, and freedomchat sample.
* Added catch statements for errors
* Set options for data channel opening to optional. 
* Now using just ArrayBuffers for webrtc data because freedom/chrome/node/... don't correctly support passing arraybuffer views to webworkers.
Clarified by chat: comment was about building freedom, not about this particular edit. Although generally sourcemaps are now behaving a bit strangely - maybe an uglify change.