1. The net changes add a stack frame to stdin errors. 2. The error line numbers were overly strict in many places.
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.