give the freedom modules a custom api

This gives the `turn`, `transport`, and `net` modules each their own Freedom v0.5 custom API (please note that I've renamed `transport` -> `pipe` to avoid any possible collisions between Freedom's built-in transport API).

The motivation behind doing this now was to workaround messaging issues I discovered while building a sample app -- Will mentioned that giving my modules a custom API would solve the issue.

I'm pretty happy how this turned out:
* removes the `freedom.ts` "wiring" files under each module
* enables the sample apps respond to errors much more cleanly (no more `emit`/`on` messy async coding)

Next step is to move to the new build layout...I already had this pull request in progress.
So, I got the following error when I tried to add a `usage` key:

```
Could not parse environmental manifest: SyntaxError: Unexpected string freedom.ts:53
fdom.port.Debug.print freedom.ts:53
fdom.port.Manager.onMessage freedom.ts:53
fdom.Hub.onMessage freedom.ts:53
(anonymous function) freedom.ts:53
fdom.port.Debug.format freedom.ts:53
fdom.port.Debug.error freedom.ts:53
fdom.port.Module.updateEnv freedom.ts:53
(anonymous function) freedom.ts:53
fdom.port.Module.emitMessage freedom.ts:53
(anonymous function) freedom.ts:53
fdom.Link.emitMessage freedom.ts:53
(anonymous function)
```

I'm not sure the JSON file is the best location -- but I'm not sure where is, either. In general, we haven't decided how to document arguments and things and I'm not even sure what tools exist for TypeScript. I filed an issue:
https://github.com/uProxy/uProxy/issues/286