[Coverage] Implements components view in code coverage report.

This CL implements a feature to display code coverage by components.

The high-level structure of this change contains three different views:
- directory_view: organizing by top level directories under src/.
- component_view: organizing by components.
- file_view: organizing by each single file.

The directory_view is the default view to which index.html redirects to,
and each html report contains links to toggle between the three views.

Bug: 799632
Change-Id: I3df09fef2dfa0c8da2535f03d02d478b9c51bc8c
Reviewed-on: https://chromium-review.googlesource.com/894992
Commit-Queue: Yuke Liao <liaoyuke@chromium.org>
Reviewed-by: Abhishek Arya <inferno@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#533896}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: dd1ec0596e368ca83e1143c576072ba867f3d5ef
5 files changed
tree: 91405f9aac0555a1b6c768252e034bedeec6f20f
  1. html_templates/
  2. coverage.py
  3. OWNERS