Add more support for asynchronous testing:

1.  Added "async" for flow control.  https://github.com/caolan/async
2. Modified testRunner so that test results are recorded correctly when tests are executed concurrently.
ported repeat2.sh to test/repeat2.js

Can be run by:

// under data cache directory
node test/repeat2.js