Unbreak open source build on ocaml 3.12

Summary: I went over the ocaml 3.12 manual to make sure that was the only Hashtbl function we were using that we couldn't.

Fixes: https://github.com/facebook/hhvm/issues/339

Reviewed By: @jwatzman

Differential Revision: D1484895
Imported unit tests from php 5.5.15

Summary: This imports the tests from php 5.5.15 up from 5.5.11

Reviewed By: @fredemmott

Differential Revision: D1481430