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
@natduca I did this following netlog's example in dealing with unmatched begin and end. The parsing rules are what I have documented in the [design doc] (https://docs.google.com/a/chromium.org/document/d/1Z2uqj59UEts5IiXX78mkdU4kd6e7kE3JUKPoDK97bVs/edit#).   Existing examples in this importer only produce an warning though, as Dan mentioned. Do you think we should continue with this new parsing rules (or  change it so that we ignore unmatched begin/end)? I don't know much about the things trace-viewer does with CPU timings..