Don't use -Og for debug build, and add -ggdb

Summary: -Og is great in theory but in practice it produces binaries that aren't very
debuggable. Go back to -O0. -ggdb produces more expressive debug information.

Closes https://github.com/facebook/hhvm/pull/3275

Reviewed By: @bertmaher

Differential Revision: D1457844

Pulled By: @ptarjan
Simplify LdObjInvoke with a persistent const class.

Summary: We can just load the Func* and propagate it.

Reviewed By: @bertmaher

Differential Revision: D1453838
Remove usage of post-4.00 `List.iteri`

Summary: `List.iteri` isn't available on ocaml 3.12, which is what
Debian stable has. Use a replacement.

Reviewed By: @joelbeales

Differential Revision: D1458292