Tests asynchronous call stacks for Web SQL.

Set timer for test function.
Captured call stacks in no particular order:
Call stack:
    0) onCreateTableSQLTransactionCallback (async-callstack-web-sql.js:45)
    [SQLTransaction]
    0) openDB (async-callstack-web-sql.js:33)
    [setTimeout]
    0) testFunction (async-callstack-web-sql.js:15)
    [setTimeout]
    0) scheduleTestFunction <omitted>
    <... skipped remaining frames ...>

Call stack:
    0) onDropTable (async-callstack-web-sql.js:53)
    [SQLStatement]
    0) onCreateTableSQLTransactionCallback (async-callstack-web-sql.js:48)
    [SQLTransaction]
    0) openDB (async-callstack-web-sql.js:33)
    [setTimeout]
    0) testFunction (async-callstack-web-sql.js:15)
    [setTimeout]
    0) scheduleTestFunction <omitted>
    <... skipped remaining frames ...>

Call stack:
    0) onSuccess (async-callstack-web-sql.js:20)
    [SQLStatement]
    0) onCreateTableSQLTransactionCallback (async-callstack-web-sql.js:46)
    [SQLTransaction]
    0) openDB (async-callstack-web-sql.js:33)
    [setTimeout]
    0) testFunction (async-callstack-web-sql.js:15)
    [setTimeout]
    0) scheduleTestFunction <omitted>
    <... skipped remaining frames ...>

Call stack:
    0) onSuccess (async-callstack-web-sql.js:20)
    [SQLStatement]
    0) onCreateTableSQLTransactionCallback (async-callstack-web-sql.js:47)
    [SQLTransaction]
    0) openDB (async-callstack-web-sql.js:33)
    [setTimeout]
    0) testFunction (async-callstack-web-sql.js:15)
    [setTimeout]
    0) scheduleTestFunction <omitted>
    <... skipped remaining frames ...>

Call stack:
    0) onSuccess (async-callstack-web-sql.js:20)
    [SQLTransaction]
    0) openDB (async-callstack-web-sql.js:33)
    [setTimeout]
    0) testFunction (async-callstack-web-sql.js:15)
    [setTimeout]
    0) scheduleTestFunction <omitted>
    <... skipped remaining frames ...>


