Further refinement has been added to the Metrics tracking class.  It can now print out a nested stack trace which includes time totals in each recorded function.  Additional work is required to understand the overhead for actually recording metrics as well as a better method for rolling up all recorded metrics.  Due to the Async nature of the application, getting and end-to-end timing value will be difficult.