Some cleanup of PCRE header

Summary: It seemed out of place for pcre_ functions to be declared in
program-functions.h.  Moved them to preg.h for documentation, and forward
declared them where necessary to keep dependencies minimal.

Reviewed By: @jdelong

Differential Revision: D1625249
Get tests passing with Simplifier turned off

Summary: Since we've lately discovered that Simplifier has some pretty
significant unsoundness, we wanted to see how much it costs us to turn
it off. First step is to pass tests with it turned off.

- The change to make bool-casting an array be accurate for
  NameValueTableWrapper wasn't applied to one callsite, which gets
  called by the translation of ConvCellToBool, which appears much more
  commonly when simplifier is off.

- The spec's description of CheckNullptr was wrong. This sent me on a
  wild goose chase for a bit.

- `AssertNonNull(nullptr)` appears in the IR with simplification off.
  This is OK because it's unreachable, but we need to give it a type
  that isn't Bottom and corresponds to a DataType, to avoid upsetting
  machinery downstream. (This definitely feels silly, but I tried a
  variety of other solutions and this is the simplest I found.)

- We start seeing `IsType<InitCell>`, which requires two comparisons to
  check. Just punt on it.

Reviewed By: @jdelong

Differential Revision: D1628088
Remove a couple of references to Eval.JitAStubsSize

Summary: This option was killed when we split astubs into cold and frozen.

Reviewed By: @bertmaher

Differential Revision: D1628118