Fixes #864 -- add a default iterator to groupBy and countBy
toArray: only call Array.prototype.slice on actual arrays.

Specifically, this fixes _.toArray on NodeList objects on IE8, which worked in
Underscore 1.3.3 but throws "JScript object expected"  in 1.4.0.
Updated an old link to Prototype.js' API docs.
Merge pull request #870 from Ore4444/patch-1

Updated an old link to Prototype.js' API docs.
fixes #868: _.times collects return values
Optimize `_.times`.
Use identity instead of creating a new function
Ensure a bound instance is an instance of the bound and original function.
Merge pull request #879 from spadgos/faster-compact

Use identity instead of creating a new function in `_.compact`.
Update `_.each` documentation. [closes #867]
Merge pull request #866 from glasser/toarray-nodelist

Ensure `_.toArray` only call `Array#slice` on actual arrays.
Cleanup `_.toArray` unit test addition.
Make Underscore work in Adobe's JS engine.
Cleanup test/object.js to match existing coding style.
Make unit tests passable in IE < 8.
Avoid OOP wrapper unless explicitly testing it in test/arrays.js.
Remove no longer relevant custom `isEqual` method tests in test/objects.js.
Cleanup `_.template` test in test/utility.js
Fixes #877 -- uniqueId treats prefixes as strings and returns strings
removing json3 dependency in favor of qunit's deepEqual