Find moved items when using observableArray#splice with arrayChange notifications.
In IE<=8, delay deletion of options until after new items are added to fix a selection bug.
Make jQuery.cleanData optional by adding an extensibility point for cleaning external data that can be overridden.
Use __proto__ for fn extensions on browsers that support it.
Based on work by @mwiencek and @alFReD-NSH
Use objects instead of arrays to track computed dependencies.

Thanks to @coderenaissance and @farmdawgnation for their similar work.
Instead of using special workaround code to handle click weirdness in IE<9 and jQuery, use the element.click method. This is the same fix that jQuery added in 1.9 for checkboxes (but not for radio buttons).
Fixes the problem that IE<=8 throws "Unspecified error" when text or options binding is used in a pop-up window.
Improve '.throwsContaining' error message
Organised the different sets of native template tests into groups
Merge pull request #844 from knockout/844-ie8-popup-window-bindings

IE7/8 issue with knockout 'text' binding in popup window
Merge pull request #1191 from knockout/1191-better-checkbox-click-fix

Remove jQuery workaround that's no longer needed
Merge pull request #1208 from knockout/1208-ie8-options-selection-bug

KO 3.0.0 bug in IE8 - options/optionsCaption
Specs for "fn" in general
Ensure spec count remains consistent across browsers

Otherwise it’s hard to tell if some syntax error has caused a bunch of
specs not to run on a particular browser
Added equivalent proto assignment spec for ko.subscribable
Instead of overwriting ko.*.fn.__proto__ every time an observable/subscribable/observableArray is constructed, define the inheritance chain in a one-time setup action
Make sure observables can use Function.prototype methods when overwriting __proto__
Make the various array methods (forEach/map/filter) provide the array index to their respective callbacks
Added suite of tests for all utils.array methods
Enable utils tests in node runner