Add dipose method to observables returned by asKoObservable() to correctly handle memory

I've detected memory leaks when using asKoObservable(), as:

1. koProperty missed the var keyboard, so the last property observable is always referenced by this from global window

2. subscriptions and properychanged event where not removed

Also, somebody can please generate the knockout.min.js? I've tried some web services to minify it, but the format is not the same as the already applied, so that is why i leave it to some core developer to do it.