fix stack overflow in flow_parser.js for large objects, arrays
fix stack overflow in flow_parser.js for large objects, arrays

Summary:
`List.map` is not tail recursive. an object with lots of properties, or an array with lots of elements, can blow the stack... especially in flow_parser.js, since JS seems to have a lower stack limit than ocaml.

in my case, this repro'd on a file like `({ "1": 1, "2": 2, ......., "9999": 9999 })`

Reviewed By: jbrown215

Differential Revision: D12399171

fbshipit-source-id: cad2b93199e1591451c2a6bf5b003b76f346780b

nmote/flow,nmote/flow,nmote/flow,nmote/flow,nmote/flow,nmote/flow,nmote/flow