Fix poly-torture to avoid order of eval issues

Normally, hhvm will translate

  echo "x $x";

as

  echo "x ".$x;

Which fully evaluates the rhs, then starts to output it.

hphp will transform it to

  echo "x ", $x;

Which avoids the concat, but outputs "x " before evaluating $x. hphp wont
perform the transformation if there are obvious side effects, but it will
treat a simple variable as having no side effects - even though it may
be uninitialized.

Im just fixing the test by performing the transformation manually. I don't
think anyone cares whether the $x undefined notice appears before or after
the "x ".
Check accessibility before replacing static props with their value

If a static property is provably not modified, and it has
a literal initializer, it is optimized away at translation time.
We should check that its accessible before doing that.
Prevent an equality check from being optimized away

We were depending on a side effect of the string conversion
Add hphp_opts file for types

fixes test/quick/parse_type_not_typedef.php
style changes

I'll do the nitpicks, sorry @jdelong.
add zend shortcut

This should be here for completeness. And so @jdelong can easily fix them :)
fix some lint

I tried to remove the namespace thing but that rabbit hole went too deep. When I hit ##OPCODES## I stopped.
Rebuild parser, move test into test/slow

@override-unit-failures

D774978 was checked in with a broken test. New tests go in test/slow
now. The test was broken because @drussi apparently didn't rebuild the
parser after his last diff update (changing 's' to 't').
Add a few things to hphp/test/.gitignore
Make generators always-enabled

Zend supports generators now, so it's not
really HipHop specific syntax anymore
fix 3 zend tests for whitespace problems

Rebase ate my whitespace :(

I added mutliple ##-o## support to easily support fixing some tests like this:

  ./tools/import_zend_test.py -z /tmp/php-5.4.13/ -o ctype_space_variation1.php -o ctype_xdigit_variation4.php -o bug33957.php
import random crap zend files

Many zend tests require files which aren't in their .phpt files. We need these extraneous files if we want these tests to pass.

Zend isn't nearly as clean as I would hope. Here is how I did it:

* Move EVERYTHING from the directories to test/zend/all
* run the tests thre with all the random crapy files
* move things in the whitelist to good
* move everything else to bad

@override-unit-failures
kill TestPerformance

deadcode
I think perflab is a better tool
@override-unit-failures
use run_test_other.sh for 5 C++ test suites

This will make things less error prone. If we fork early in the makefile instead of sharing some infra then changes to the PHP-based test infra won't break c++ tests.

While I was there, I tried to fix the weird order that some tests had
the suite first and some had the set first. It got hard since D773384 hasn't
landed yet. When we do that, then I'll cleanup that stuff.
Better dynamic constant support in repo mode

A constant defined in a function/method should be treated as
dynamic.
A class constant with a dynamic initializer should evaluate to
the value of its initializer at the time the constant was first
seen; so the optimization should be all or nothing - either
turn the class constant into a scalar, or leave it in its original
form.
Fix a crash if an exception is thrown in a constructor's surprise check

The unwinder assumed that if the actrec's constructor flag
was set, then there must be a $this. But the $this is cleared during
the return sequence.
Fix reflection for default values that were optimized

If a default value is optimized from a class constant,
to the value of the class constant, then reflection needs to
be able to get the text of the original class constant.
Fortunately hphp tags that onto the replacement expression for
just this reason. Lets use it in the emitter.
Fix stack offset tracking in emitPrint, caught by zend test

The emitPrint function failed to pop the cell when it decided
to nop out the print.  This led to the stack being off by one when we
got to the RetC in this test.
hphp/src is now hphp/hphp

That's it
Fix some cpplint errors about illegal symbols

Various perling.