Stop using File::Slurp

it's not a core module, and more importantly, the error
message sucks when it's missing (because the TAP harness
swallows it up by default).
Add test for iterating over a hash.
Test both using ops and methods to get the key/value while iterating a hash.
14 more tests for %e, %f, %g.
Incorporate FROGGS++'s changes.
fixed padding in test for %g's precision
dont use (char) typecast for codepoints

This typecast does not support codepoints > 0x10000. This fixes
at least one test in roast.
Add a test which checks that JavaScript reserved words can be used as method names.

Hopefully that test will be usefull on any future backends emitting source code.
Fix commit b0a39036fb976b36150a3d6291e6db97e047f1e9.
Fixed two wrong tests.
Test 0.0 sent to %e.
Two tweaks to sprintf.

Properly handle 0.0 sent to scientific notation.
Properly convert double to big integer.
Fix incorrect tests.
Fix some previously incorrect details.
Fix incorrect tests, add tests for e-20 in %g.
Fix bugs in %g.