refactor variable typing
refactor variable typing

Summary: splits variable typing into some helper methods. I have a stack in progress that tries to tighten up for loop initializers which introduce bindings, like `for (let x in y)`, which will use this. but seems a bit more self-documenting than before so worth doing on its own IMO.

Reviewed By: samwgoldman

Differential Revision: D13489005

fbshipit-source-id: b9e8d31262eb55bcfb132b915d6f4b0aa75b1016

gabelevi/flow,samwgoldman/flow,facebook/flow,mroch/flow,facebook/flow,popham/flow,mroch/flow,mroch/flow,gabelevi/flow,facebook/flow,gabelevi/flow,facebook/flow,samwgoldman/flow,facebook/flow,samwgoldman/flow,popham/flow,gabelevi/flow,mroch/flow,samwgoldman/flow,mroch/flow,mroch/flow,mroch/flow,samwgoldman/flow,gabelevi/flow,popham/flow,popham/flow,gabelevi/flow,popham/flow,popham/flow,samwgoldman/flow,popham/flow,samwgoldman/flow,facebook/flow,gabelevi/flow,facebook/flow