Added support for Array Change subscriptions. Added tests to the test_observableArrays() in knockout-tests.ts.

I added support for Array Change Subscriptions (issue link: https://github.com/borisyankov/DefinitelyTyped/issues/2933)
Hi @Igorbek ,
Sorry for the trouble. I created a parent interface KnockoutObservableProperties<T> that doesn't extend subscribable, in order for the KnockoutObservable and KnockoutObservableArray interfaces to directly extend from subscribable.

I believe this is necessary in order to support the overrides I added on KnockoutObservableArray in order to support the "arrayChange" subscription support. Extending KnockoutObservable<T[]> would make these overrides incompatible. 

I assume some of the tests are indeed lacking to have caught this (like @johnnyreilly suggests), since I used npm test to check my changes and (I also didn't have any problems in my own seperate project).