Get tests passing w/ new KeyEvent approach

Still waaay to many hacks in here and it only works with
bleeding edge.

But it works
Keys.lastKeyCode hack was a poor idea
Changes for Dart 1.0

Better use the HTML unit test config.
Remove deprecated JS stuff
Hacks in lieu of real KeyEvent test support
Workaround NUL character js-interop issue

Have JS decode Base64 and GZIP inflate records