Speed up AtomicVector's constructor

std::atomic<const Func*>::operator= was using an mfence. The "copy"
constructor specifically says it's not atomic so it's much cheaper. The old way
was also wrong for non-POD types since we were never actually constructing the
values.

Reviewed By: @jdelong

Differential Revision: D1217347
Add runtime option to disable http server takeover

This makes the process of binding to an open port for server mode
tests simpler.

Reviewed By: afrind

Differential Revision: D1219524
Add support for sending PHP errors in request response

This is necessary for server mode tests to work. It's still off by
default. Also remove an unused runtime option.

Reviewed By: @markw65

Differential Revision: D1219580
Fix array iterator functions

D877203 messed up functionality a bit during the refactor. We need to
call isHead and isTail instead of isInvalid for a couple of them, and make sure
we always COW if the array is going to be mutated.

Reviewed By: @jdelong

Differential Revision: D1219906
Revert "Partially pull out apc const_load and uncompressed load support"

This reverts commit 99b28eec07ef16a526075d08cd462a639a4e89ad.

Reviewed By: @bertmaher

Differential Revision: D1221014
Add more joomlacms clown tests

Closes #2059

https://github.com/facebook/hhvm/pull/2059

Reviewed By: @sgolemon

Differential Revision: D1220897
don't load constants if the memory manager isn't up

This came up for the runtime option diff. If we didn't start up the memory manager yet, we can't read constants. What should we do? I think this is an ok compromise

Reviewed By: @markw65

Differential Revision: D1216152
Fix DateTime->format() flags 'e' and 'T' for offset time zones (take 2)

Don't do the computation for every format string, just the ones that need it

Reviewed By: @markw65

Differential Revision: D1218450
kill evhttp_*

A whole slew of functions with no callers that we really shouldn't expose.

Reviewed By: @markw65

Differential Revision: D1218799
don't rely on FileDoesNot.exist

that file seems to be on some build machines

Reviewed By: @fredemmott

Differential Revision: D1219977
make DynamicInvokeFunctions case insensitive

This will match `RuntimeOption` now. One day we could actually share a config parsing pipleline, wouldn't that be swell.

Reviewed By: @markw65

Differential Revision: D1217088
fix default value for mysqli_real_connect()'s $flags parameter

mysqli_real_connect()'s $flags parameter should default to 0, not null.

Closes #1982

https://github.com/facebook/hhvm/pull/1982

Reviewed By: @ptarjan

Differential Revision: D1220761
Fix is_callable() to not warn when passed a non-callable array

This diff fixes is_callable() to not warn when passed a non-callable array.
It also fixes a bug in RepoAuth mode that was incorrectly optimizing calls
to is_callable() with 2 or more parameters.

Closes #2036
Closes #1995

https://github.com/facebook/hhvm/pull/2036

Reviewed By: @ptarjan

Differential Revision: D1220770
PHP5 compatibility: Allow NULL as element handler

Allow NULL as element handler, as tested in xml011.php

Reviewed By: @ptarjan

Differential Revision: D1221001
Re-record overly vague tests

- The tests are currently really vague
- slow/user_wrappers/1696.php is just plain bad. We now match php5 on that though
- This makes my upcoming sed easier

```
./run $(git grep -l '%S%w' | sed 's/.expectf//')
../tools/out2expectf.py $(git grep -l '%S%w' | sed 's/.expectf//')
```

Reviewed By: @ptarjan

Differential Revision: D1215031
Don't link libvpx since we don't have anything which uses it