Trace improvements

The biggest change that comes with this commit is that we now track how
long it takes to execute a Task's run method.

This change also includes some tracevis improvements:

- Table view
    - Show time with microsecond resolution.
    - Show the end time in a column.
    - Show the time it takes to transition to invoke a Task's run
      method.
    - Use a monospace font and align all times in each of the numeric
      columns.
- Graphviz view
    - Show the time it takes to transition to invoke a Task's run
      method.
    - Align all times for the numeric cells.
- Waterfall view
    - Show the time it takes to invoke a Task's run method using a
      darker color.
    - Color scheme improvements.
    - Colors are managed through CSS instead of JS.