Fix block mapping for IRUnit entry

Summary: It was picking which region block corresponds to the unit entry based
on offset.  Just use the first block in the region, which is the
entry.

Reviewed By: @bertmaher

Differential Revision: D1456181
typechecker: infer untyped 'async function' returns 'Awaitable'

Summary: ... because like 'private', 'async function' is a property of
 the language that programmers should not need to explicitly
 reenforce. With this inference, the 'awaitable not being awaited'
 heuristics become even more valuable.

 Going down the road of inferring return types would normally be
 considered a slippery slope of cross-file effects, mutually reentrant
 type recalculation passes, and associated badness. However, in this
 case 'async function' as a language feature is explicitly localized
 to the function declaration, and subject to very very simple
 unification.

Reviewed By: @jwatzman

Differential Revision: D1455175