Using tests from test262

Hi!

Here are some changes based on the latest spec changes:

* Array operations no longer use `ToUint32`. Instead, they use [`ToLength`](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength) which makes much more sense.
* Uncallable predicates must throw even when the array is empty.

Sure, it'd be functionally equivalent, but it's nice to optimize for code paths when it's easy :-)