[Review Only] JS Code Hints: Remember timed out files, notify user

@dangoor 

I pushed this interim branch for you to take a look. This works for some code paths.

TODO:
- [x] bug: `isFileExcludedInternal()` not called on all code paths (cannot repro, maybe confused similar file names)
- [x] implement notification dialog
- [x] don't exclude file currently being edited
- [x] convert pref to project scope?
- [x] remove `console.log()` statements
- [ ] rebase this branch

This fixes exception I hit with `worker` being `null`.