Add support for alternative charsets

Sometimes, neither source files nor output of JSX (ReactJS), or any other transformation, can be done from utf8 to utf8. In these scenarios, it's useful to be able to specify input and output charset. This PR adds support for this.