Changed type conversions to take actual values, not computations
Fixed valueof not converting this to an object when using call
Array.prototype.forEach