Fix tests failing on certain browsers

Currently the following are failing on certain browsers:

 - [x] Skips the diff algorithm when the array mutation is a known operation (fails on IE < 9)
 - [x] Can replace a node with some other node (fails on IE < 9 - probably just an issue with how the test stringifies text nodes)
 - [x] Should not bind against text content inside `<script>` tags (fails on IE < 9 because they don't allow you to set expando properties on text nodes and this test tries to bind to text nodes)
 - [x] Should update all child contexts and bindings when used with a top-level observable view model (fails on IE < 9)
 - [x] Should call an afterRender callback, passing all of the rendered nodes, accounting for node preprocessing and virtual element bindings (fails on IE < 9)
 - [x] Should trigger a change event when the options selection is changed by modifying the options data (multiple select) (fails on Safari 6 and maybe also Opera) (mbest: tested working in Opera 16; fails in Opera 12)

Hopefully we can resolve these quickly then put out the 3.0 RC.