Implement Encoding API

Initial implementation, behind the experimental features flag.

Tests are derived from my JS impl: code.google.com/p/stringencoding/

Many of the tests have FAIL results, due to a mix of:
* Mismatch between canonical encoding names
* Unsupported encodings from the spec
* Extra encodings (e.g "us-ascii") that are mapped differently in the spec
* Issues with streaming encode/decode (e.g. split UTF-16 code units)
* Possible encoder differences

In other words, there's still a lot of work to do.

BUG=243354
R=dglazkov@chromium.org

Review URL: https://chromiumcodereview.appspot.com/15901002

git-svn-id: svn://svn.chromium.org/blink/trunk@155379 bbb929c8-8fbe-4397-9dbb-9b2b20218538