Smallish cleanups, mainly to unit test code

* SpecRunnerUtils:
    * Improve docs
    * Add assertion in case a mock Document is created without an Editor but then used in a way that would auto-create an Editor (which won't get cleaned up)
    * In DocumentManager, add assertion in _destroyEditorIfUnneeded() since its name makes it easy to call with the wrong type (including via SRU.destroyMockEditor())
    * Use waitsForDone() more
* LanguageManager:
    * Minor docs cleanups (incorrect usage of "i.e.", missing
docs for new fileNames option, etc.)
    * Remove a duplicated LanguageManager test (due to f67cfcd)
    * Move filename->language mapping tests from Editor-test to LanguageManager-test
* InstallExtensionDialog: Add unit tests for install dialog cases where installer comes back with a result after clicking Cancel but before Cancel times out, or comes back vary late after timeout once user has opted to close the dialog
* StringMatch: Add a few more tests to ensure tricky cases don't break in the opposite direction as before (including the test suggested by Kevin in #3417)
* DocumentManager: use CollectionUtils.forEach() in notifyPathNameChanged() (removing early-exit optimization that's probably unneeded; can reintroduce when CollectionUtils.some() lands)
* FileIndexManager: add another #330 testcase as suggested by Glenn in #3064
* HTMLCodeHints: rename test suite & remove unused var
* CSSUtils: remove unused vars
* Dialogs: tiny docs improvement