Mostly just upgraded tools/test.py to the latest one that's in V8. But also
fixing the before and after hooks to preserve the test/tmp directory so that
running tests manually usually works.
Add a setUp and tearDown function to the test case class, and use it to
create and remove the test/tmp directory for each test.
TODO: amend other tests.