TestRunner curTestSuiteNum Bug Fix

(this pull request is a cleaned up version of the now-closed PR #937)

Currently curTestSuiteNum is updated for every file that is run, restricting each file to one test suite per file.

This was causing issues in files with multiple sets of tests:
- stepTimeout uses an id of <filenum>_<stepnum>, and stepTimeout stops polling if the id matches
- if a subsequent testSuite runs in the same file, it will have the same testSuiteId, causing potential misfires of stepTimeout

This separates file count from test suite count, eliminating the stepTimeout problem, and allowing multiple testSuites per file.