Currently, all test files are excluded from TypeScript's purview. That
means that if any test file fails to typecheck, we won't know about it.
In fact if we were to remove all test files from the `exclude` list,
then some files would indeed fail to be typechecked.
At the moment all we care about is the unit test file for
NetworkController. Due to how the `include`/`exclude` rules work in
`tsconfig.json`, we can't "un-exclude" that file after it's excluded, so
to fix this, we simply exclude fewer things.
While we're at it, we also:
- Add `esModuleInterop: true` to address warnings we sometimes see
around imports
- Add `noEmit: true` so that we can run `tsc` to test typechecking on
its own without producing any compiled files (so that ESLint doesn't
accidentally pick them up)
- Clean up `tsconfig.json` slightly