Fix case for parent classes in autoload

Summary: The case of the name passed to autoload should match
the case in the extends/implements/use clause, not the
case of the class/interface/trait declaration.

Closes #3146

Reviewed By: @jdelong

Differential Revision: D1540544
Turn off ControlFlow by default in WholeProgram mode

Summary: Its no longer doing anything useful, and its 85% of the
postoptimize time. I'll turn it off first, and if no issues turn
up, I'll get rid of the code.

Reviewed By: @jdelong

Differential Revision: D1540059
Fix refcounting in arReturn() and stop leaking static strings.

Summary: Change arReturn() to take Variant&& and move the value
to the return slot in ActRec.

Reviewed By: @markw65

Differential Revision: D1541349
Fix GMP tests/crashes

Summary: This should fix some crashes and all bad tests other than 014, and 028.

I marked test 014 as flakey, as it is checking for wrong return values due to a bug in PHP.  It appears as though PHP is using the resource number as the factorial rather than the resource's value, giving unpridictable results (depends on how many resources have been used thus far)

Test 028 still fails as gmp_random is not implemented.
Closes https://github.com/facebook/hhvm/pull/3639

Reviewed By: @sgolemon

Differential Revision: D1530781
Include files in zend/bad/zip/

Summary: This was included in zend/good, but the importer didn't know of this.
Unfortunately it didn't fix a test
Closes https://github.com/facebook/hhvm/pull/3684

Reviewed By: @sgolemon

Differential Revision: D1541445
Fix undefined variable in Imagick::valid

Summary: Fixes #3682
Closes https://github.com/facebook/hhvm/pull/3683

Reviewed By: @sgolemon

Differential Revision: D1541444
Make optimizedCallCount load a cell

Summary: Count takes a cell as its first source, we shouldn't pass it a Gen.

Reviewed By: @alexmalyshev

Differential Revision: D1540955
docskel: Update URL

Summary: PHP has now moved to using git, and the svn url now points to their
SVN extension library...

Reviewed By: @ptarjan

Differential Revision: D1541790
Slight cleanup on jit::Edge, add from() method.

Summary: Tired of doing edge->inst()->block() every time.

Reviewed By: @edwinsmith

Differential Revision: D1537879
typechecker: clearer error messages for __TRAIT__ misuse

Reviewed By: @elgenie

Differential Revision: D1533111
Implement posix_errno

Summary: Closes https://github.com/facebook/hhvm/pull/3685

Reviewed By: @sgolemon

Differential Revision: D1541447
Add options parameter to DOMDocument::load/loadHTML()

Summary: Fixes #3695
Closes https://github.com/facebook/hhvm/pull/3696

Reviewed By: @sgolemon

Differential Revision: D1541940
Xdebug remote debugging compatibility and bug fixes

Summary: This diff finishes the last two remote debugging commmands property_get and property_set, fixes remote debugging bugs, and adds compatibility fixes to ensure remote debugging fully works with phpstorm, komodo, netbeans, and vim.

Additions:
* Implemented property_set and property_value and added test for property_set
* Updated tests broken with the below changes
* General cleanup

Compatibility:
* Added $GLOBALS variable to superglobal context
* Filtered out superglobals from the local context
* Context ids should start at 0 for komodo to be happy
* Replaced calls to `xdebug_get_php_symbol` with an eval. There were bugs with `xdebug_get_php_symbol` and I discovered phpstorm, komodo, netbeans, and the vim plugin always just send an expression.
* stack_get was being used by ides differently than expected. E.g. level 0 is intended to be the current location

Bug Fixes:
* xdebug.idekey ini setting was incorrectly named xdebug.ide_key
* When outputting arrays to xml the page was always set to 0
*
Closes https://github.com/facebook/hhvm/pull/3670

Reviewed By: @paulbiss

Differential Revision: D1539060

Pulled By: @sgolemon
Ensure that the entry block of an IRUnit does not have predecessors.

Summary: This can happen if the first block in the region is a loop header.

Reviewed By: @ottoni

Differential Revision: D1537458
Support reffiness check in the middle of a region

Summary: Similar to CheckType vs GuardType, add a new instruction CheckRef to
do reffiness checks in the middle of a region.

Reviewed By: @swtaarrs

Differential Revision: D1527354
use folly::to<>() instead of boost::lexical_cast<>()

Summary: folly::to() reports speed improvements over lexical_cast

Reviewed By: @markw65

Differential Revision: D1469160
Add support for GNU tar symlinks to PharData

Summary: I need a more functional tar handler for the framework cache.

Reviewed By: @ptarjan

Differential Revision: D1542175
Remove retries, reduce timeout, add source cache for OSS tests

Summary: - cleanup of the timeout code
- add source cache (including vendor/)
- add --local-source-only to force a failure if something isn't cached
- use that option in fbmake
- add cache files for every framework that's currently in fbmake. WIll do --all separately

Reviewed By: @ptarjan

Differential Revision: D1539318
fix hh_fixme for parsing errors

Summary: HH_FIXME was not working on parsing errors.
Usually, it's a good idea to populate a lookup table *before* doing
lookups in it ...

Reviewed By: @jwatzman

Differential Revision: D1540181
Split option parsing to another class.

Summary: About to add moreoptions, threading them through is getting unwieldly.

Reviewed By: @JoelMarcey

Differential Revision: D1540300