Begins work on Dart bindings by translating codec.js to Dart.

This change does three things:
1. Modifies and adds GN files to prepare for Dart bindings.
2. Adds a script to run Dart bindings tests.
3. Adds a translation of the JavaScript codec to Dart along with
   tests.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/702013002