fixes for dependencies and freedom typing

This mini-pull request (against freedom_0.6 branch) is intended to show a way to use the freedom object as a constructor instead of a function and thereby unify usage of it (The function/constructor duality makes it a bit tricky to know what the type of the freedom object is). This solution makes the Freedom type a Thenable of the function that then gives the on/emit interface for constructed module. 

TESTED: 
1. sym-link uproxy lib from https://github.com/uProxy/uproxy-lib/pull/95 into node_modules
2. grunt test
3. Load up uproxy in Chrome and observe no errors. 

before submission, will need to update uproxy-lib npm and depend on the update. 
oops, the test should not have been removed. The prepublish isn't very helpful as it happens every npm install. I think we should probably opt for a presubmit in a way that happens before you submit instead of every npm install. Perhaps a git-presubmit. 

Either way, this pull request is just a demo for @salomegeo to help unblock the typescript faff being fought with.