Change order of wait handle processing from FIFO to LIFO

Summary: Process most recently woken up wait handles first.

Reviewed By: @billf

Differential Revision: D1394032
Implemented xdebug_call_function

Summary: This diff implements the xdebug function xdebug_call_function.
If function g calls function f and function f calls xdebug_call_function,
the name "g" is returned.

Reviewed By: @sgolemon

Differential Revision: D1388555
Remove unused util/pool.h

Reviewed By: @ptarjan

Differential Revision: D1396961
ArrayIterator->current() is supposed to return null after end of array

Summary: current() return false on failure and key() returns null because who needs to follow any rules?
Closes #2997

Reviewed By: @ptarjan

Differential Revision: D1397185

Pulled By: @JoelMarcey
Include types of locals in autocomplete results

Summary: We're completing locals right now during naming and we don't have types available there yet.
But, in typing, all we have is idents and types.

Approach:
-When we hit the old autocomplete point in naming, store a map of variable names to idents and the current position.
-When we hit an Lvar at that same position in typing, use that map to get the types of everything.

Reviewed By: @pikatchu

Differential Revision: D1385988