Validate UTF-8 strings.

Raise JSON::GeneratorError on converting Ruby UTF-8 string to JSON
as to JSON ASCII does.
Add test and implement pure versiong