Fixing wrong Function.prototype.bind behavior with Array arguments

Arrays are beeing split into function arguments.

Test case:

```javascript
var fn = function(a) {console.log(a)};
fn.bind(this)([1,2,3]);
```
Result: `1`
Expected result: `[1,2,3]`