Tsclosure

This replaces the default TS module output:
```
var A;
(function (A) {
    (function (B) {
        (function (C) {
            C.Z;
        })(B.C || (B.C = {}));
        var C = B.C;
    })(A.B || (A.B = {}));
    var B = A.B;
})(A || (A = {}));
```
with

```
var A = A || (A = {}), 
    B = A.B || (A.B = {}), 
    C = B.C || (B.C = {});
    C.Z
```

The TS patch that does this is available here: https://github.com/mbebenita/shumway.ts/commit/334a9e735acb728e9c2fe25ab54c64e9bdf69536

Running:

With this optimization:


```
js -b -f build/ts/base.cc.js -f build/ts/tools.cc.js -f build/ts/avm2.cc.js -f build/ts/flash.cc.js 
runtime = 8.337 ms
runtime = 4.079 ms
runtime = 35.400 ms
runtime = 43.776 ms
```

Without this optimization:
```
js -b -f build/ts/base.cc.js -f build/ts/tools.cc.js -f build/ts/avm2.cc.js -f build/ts/flash.cc.js 
runtime = 8.327 ms
runtime = 4.568 ms
runtime = 39.803 ms
runtime = 53.596 ms
```

So it makes a bit of a difference.

This can be disabled by removing the `--shumwayMode` TS compiler flag.