Carry through build options from cmake command line

Summary: This makes it possible to carry through build options from the cmake
command-line, by, exporting the environment, eg.:
  CMAKE_C_FLAGS="${CFLAGS}" CMAKE_CXX_FLAGS="${CXXFLAGS}" cmake
in a complex build environment.
Closes https://github.com/facebook/hhvm/pull/3855

Reviewed By: @ptarjan

Differential Revision: D1580318
Add an option to not test in repo mode

Summary: The repo tests sometimes hang for me or take a unreasonable amount of time.
Add an option to skip them. Default is still to test it though.
Closes https://github.com/facebook/hhvm/pull/3858

Reviewed By: @ptarjan

Differential Revision: D1580850
Fix a bug in castBoolImpl for arrays

Summary: Pretty bad bug.  It was ignoring the 'negate' arg.

Reviewed By: @bertmaher, @swtaarrs

Differential Revision: D1580833
Remove unused m_shouldCache bool in APCHandle

Summary: Nothing reads it, except to set it elsewhere.

Reviewed By: @alexmalyshev

Differential Revision: D1571331
Tweak headers so changing concurrent-shared-store.h doesn't rebuild world

Reviewed By: @alexmalyshev

Differential Revision: D1573497
Some clean up in APCHandle

Summary: - Move DataWalker to its own file

    - Add apc-typed-value.cpp and move some member function definitions there

    - Remove some unused or redundant functions

    - Normalize some naming (getFoo vs isFoo)

    - Renamed isObj (it really meant isNotSerializedObj) and inverted it so it
      parallels isSerializedArray.

    - Fix data race in setObjAttempted

    - Document thread-safety rules and add some consts accordingly

Reviewed By: @alexmalyshev

Differential Revision: D1574091