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.

Actually, now that the `typeof` test is done before we could even remove this early exit.