Add hooks for plugin authors

After this pull, users can add plugins to WCT via their config file like so:

```js
module.exports = {
  plugins: {
    "my-plugin": { ... }
  }
}
```

This is an improvement to #60. It turns out all coverage logic can be added to the npm plugin if WCT provides the right hooks.

This incorporates the suggestions @nevir provided in #60.

Checkout [web-component-tester-istanbul](https://www.npmjs.org/package/web-component-tester-istanbul) to see this in action.
and I think I need to document the crap out of the architecture here - it's really hard to follow I know :(