Fixed String.CharAt() to return a char instead of a string

as discussed in #322, `String.CharAt()` is made to return a `char` instead of a `string`. 

After this change, calling `CharAt()` or `CharCodeAt()` will make no difference.