Reuse diagnostic pusher across typechecking iterations
Summary:
So far, the diagnostic pusher was initialized in Typing_check_service.go, which meant that it wasn't reused between typechecking iterations. This diff initialized it instead ServerEnv.make_env, so that it spans the lifetime of the server, and threads it through Typing_check_service.go (which is not directly aware of the server env).
The threading adds yet another argument and return element to most functions there, which is not great: we should refactor arguments and returns in bigger structures.
Differential Revision:
D29396473
fbshipit-source-id:
10a3c1d18d9333b55c1b207544d3266b1df33a21