Fix perf counter being stopped twice
Add notion of "a shadow" PerformanceCounter

Shadow counter is the one that appears above on the call stack and is
associated with the same function as the subject counter. Basically any
function that calls itself directly or indirectly has multiple counters,
and at any given moment there is at most one non-shadow counter.
Revert "Rename PerformanceCounter::QueryTotalTime to just QueryTime"

This reverts commit e9ae482877ade6cf315f2bec458134394560c1c8.

Conflicts:
	amx_profiler/performance_counter.cpp
Add worst total time to the output
Fix missing quote in XML output