refactor `coverage` task

It's simpler now. Instead of setting branch/source/omit in our custom code, each component will need a `.coveragerc` file. This requires some duplication across components, but very minimal. I think the gains are worth it:
- one place for any Coverage setting
- works for any way you run Coverage