add some debugging output to js tests

- display errors in evaluate / browser code
- capture and display console.log if a test fails (like nose)

An interrupt test that did nothing is fixed, based on information revealed by this PR.
Is there a good reason to do this instead of just iterating through `captured_log` with a for loop? At least in Python, repeatedly popping the first element of a list is pretty inefficient.