Speed up hh_find_lvar_refs

Summary: All the logic for this happens during naming, but we were doing a full check.

This reduced run time by 80% for the files I tried.

Reviewed By: @jwatzman

Differential Revision: D1576504
Speed up hh_arg_info

Summary: This only happens during typechecking, so that's all we'll do.

reduces runtime by 25%.

Reviewed By: @jwatzman

Differential Revision: D1576731
Speed up js hh_check_file by caching the errors when we declare them

Summary: We only cache the first error/no error because that's all we actually need.

This gives us 20% of the time back to run hh_check_file, for the random files I tried.

Since checking can hold up the webworker and delay autocomplete, this is helpful.

Reviewed By: @jwatzman

Differential Revision: D1576224
Don't retype SSATmps to type Bottom

Summary: HHIR instructions don't like this, so avoid generating it. The cases
that this can happen, the code is unreachable anyway.

Reviewed By: @bertmaher

Differential Revision: D1593542