Fix Resolutions of Methods/Funcs in HHBBC Index
Summary:
This diff has two parts.
**Part 1** fixes the resolution of methods in `resolve_method`. In single-unit mode, HHBBC can no longer conclude anything about traits, since we simply don't know about all the traits. Therefore, when resolving class/object methods, when HHBBC sees any trait usage, the best we can do is return a name-only resolution since we can't know if the method comes from traits or not.
**Part 2** fixes the resolution of functions (with/without fallback). The code is slightly reorganized around how many resolutions we have. In the case of single resolution, we distinguish an actual single resolution of a unique function, from a faux single resolution due to the lack of global knowledge.
Reviewed By: markw65
Differential Revision:
D5452693
fbshipit-source-id:
21cc7f0dddc3542cb02e42ea4ad1154fb8e8ba66