Added flow control to debug hooks and implemented xdebug step

Summary: * Added a function `phpDebuggerStepIn` that steps over the current line and into
  function calls. The implementation of this was taken from hphpd and
  translated to be more generic. Again, hphpd has not been refactored to use this
  approach, but it shouldn't be overly difficult to do so.
* Added flags to `RequestInjectionData` indicating if a flow control command is
  active. If it is, the jit flag is turned off.
* Modified `XDebugServer::breakpoint` to work flow control breakpoints.
* `ExecutionContext::m_lastLocFilter` has been renamed to
  `ExecutionContext::m_flowFilter`. This is a much less misleading name, as its
  purpose is simply to filter out locations for flow control commands.
* Added request init and shutdown debug hooks. Debuggers can hook into these
  in order to run code on request init and shutdown, but after everything
  has been intialized. Before, an external debugger would have to start/shutdown
  on the extension's request init or shutdown. This is not desirable as we
  aren't guaranteed everything is initialized at this point.

Reviewed By: @ptarjan

Differential Revision: D1501424