improved typescript typing and organization of uproxy-pc 

* fixes a bunch `any` typings (but not all of them)
* moves the .d.ts file to live with it's definition (style-fix)
* renamed `freedom-interfaces` directory to `freedom-declarations` to avoid confusion with freedom interfaces in core providers, and to be more specific. 

TESTED: 
* grunt test
* manual test of `samples/freedomchat` (load chrome extension, then sending messages back and forth between the test inputs and looking at the console log). 
* manual test of `samples/chat`
* manual test of `samples/chat2`
OK, I'll fix it in followup. But do note that this is in a module now, not at the top level. So it would be: used via 
```
import WebRtcLib = freedom_UproxyPeerConnection; 
//... 
var peerConnection :WebRtcLib.Pc;
```