Don't let low_malloc hugify the entire tc

We carefully "enhugen()" portions of the tc. The problem is that low_malloc
maintains a high water mark, and every time it crosses into a new huge page
it marks everything up to the new high water mark huge. Since we allocate the
tc using sbrk, which allocates above the high water mark, the next time
low_malloc extends its arena, we mark the whole tc huge.

This adds some code to update the high watermark around the tc, and adds a runtime option to limit the number of huge pages used by low memory.

Differential Revision: D912684
Fix the build

I rebased past a rename of a private member
Clean up punting to interpreter

There seems to be some strangeness left over from tx64 days. When the IR
took a slow exit trace, it would go through a "retranslate/interpret"
service request, which generated a stub translation that did nothing but
make an "interpret" service request.

I got rid of the BIND_JMP_INTERPRET and RETRANSLATE_INTERPRET service
requests, and replaced them with uses of the INTERPRET service request,
interping a single instruction.

Differential Revision: D927642
Get rid of optional arguments in HphpArray helpers.

This just obscures what's going on and is making refactoring
more difficult.

Differential Revision: D927215
static closures should inherit the late bound class

Mwilliams noticed an "obvious bug" in c_Closure::init, where
it always sets the late bound class to the context class in static
closures.  But it turns out thats what zend actually does.  This
behavior seems like a bug, so we're going to preserve the late bound
class.

Differential Revision: D814837
Add a stress-test mode that forces jitted execution

Sandcastle flib testing may be missing some coverage for the
JIT because tests that fail to get the write lease can execute in
interpreted mode.  Add a runtime option Eval.RequireWriteLease that
forces a thread to block on acquiring the write lease, so all test
code will be jitted.

Differential Revision: D921235
Add CodeGenHelpers[arch] for stateless helpers

Per discussion, create a stateless class for emitter utils that
can be implemented per-platform (to move code out of code-gen and
translator-x64)

Differential Revision: D927917