Implement String.prototype[@@iterator]

Implement `String.prototype[@@iterator]`.

http://people.mozilla.org/%7Ejorendorff/es6-draft.html#sec-string.prototype-@@iterator

Fixes issue #539
We have a bug here...

http://people.mozilla.org/~jorendorff/es6-draft.html#sec-runtime-semantics-arrayaccumulation

SpreadElement : ... AssignmentExpression

4. If Type(spreadObj) is not Object, then throw a TypeError exception.

These should all throw TypeErrors. Maybe use new String to make this test correct?