IMPALA 896: impalad crashes in SetMemLimitExceeded under high concurrency

The entire MemTracker tree rooted at a process MemTracker may be walked
when SetMemLimitExceeded() is invoked. This can cause problems
if an instance MemTracker in this tree has has been destroyed, but not
unregistered from its parent query MemTracker. Unregistering happens
explicitly in PlanFragmentExecutor::Close(), but not in
FeSupport_NativeEvalConstExpr

The fix is to unregister an instance Memtracker from its parent before
destroying in the destructor for the RuntimeState (which owns the instance)
tracker. The explicit call to UnregisterFromParent() in
PlanFragmentExecutor::Close() has been removed.

Change-Id: If5821ff83f282eede51e0be322ecb788b8053de3
Reviewed-on: http://gerrit.ent.cloudera.com:8080/1988
Reviewed-by: Srinath Shankar <sshankar@cloudera.com>
Tested-by: jenkins