Fixed bug in unwind_builtin_frame caushing a crash in debug mode

Summary: Previously calls to unwind_builtin_frame would fail if hhvm was compiled in
debug mode and the builtin function had any arguments. hphpd_break is the only
function this currently applies to, but I need unwind_builtin_frame for
xdebug.

unwind_builtin_frame would only be called if after hphpd_break you used the
"next" command. Continuing doesn't result in a mode switch.

The issue was that unwind_builtin_frame calculated the top of the
evaluation stack incorrectly. It popped from the eval stack until
hitting the top of the frame, and so it freed local variables
e.g the arguments. When it later tried to free the local variables,
they were already freed (and garbage was written over in debug mode).

This diff fixes the calculation of the eval stack top and adds
a call to pop off the slots properly.

Thanks to @jano for helping me debug this.

Reviewed By: @jano

Differential Revision: D1390958
Change Pear revision

Summary: I think it's testing the same code.... looks like they did a rebase and force push.

Reviewed By: joelm, ptarjan

Differential Revision: D1398293
Fix printing of Ref-to-Boolean RuntimeTypes

Summary: I hit an assert here while tracing when this tried to print the value
of a Ref-to-Boolean.  The problem is that valueType() unboxes, but valueBoolean
asserts that the type is not boxed.

Reviewed By: @jdelong

Differential Revision: D1394892
more resilient temp dir handling

Summary: I think we're trying a double-delete as Pear fails to install.

Reviewed By: @JoelMarcey

Differential Revision: D1398162