Use objects instead of arrays to track computed dependencies.

This both simplifies the code and generally improves performance.

http://jsperf.com/knockout-dependency-tracking#chart=column compares this code (KO id with copy) with Knockout 3.0.0 (KO 3.0) and with an alternate version of this change that marks subscriptions that were refreshed and then deletes the ones that aren't marked (KO id with delete).