Added basic UI for Nestable Async Events

This CL adds basic UI support for nestable async events.
Still need to find out whether the UI looks okay. But right
now it looks like the picture in the design doc below.

Design Doc:
https://docs.google.com/document/d/1Z2uqj59UEts5IiXX78mkdU4kd6e7kE3JUKPoDK97bVs/edit?usp=sharing
One potential problem with ignoring unmatched begin and end is that we might have dangling Async events that should have a parent but do not. For instance, if we have BEGIN_A BEGIN_B END_B. Ignoring unmatched BEGIN_A,  B will be plotted as a slice in a different title subgroup.