Determine AttrHot for profiling translations in a better way

Summary: Right now, during interpreter-based type-profiling, we determine whether
to mark a function with AttrHot based on whether we enter that function
more than EvalHotFuncThreshold (40) times.

This is bad because it is a function of the mix and number of requests
we run during profiling phase, and having more functions marked as
AttrHot can cause regressions.

This diff changes it so that AttrHot is set by computing the
"hottest" EvalHotFuncCount functions, where hotness is
determined by the profile count of the function after warmup.

Reviewed By: @edwinsmith

Differential Revision: D1484134