add router.emit and router= for compatibility with v0.12

To support the label feature implemented in v0.12, input/output plugins must be modified as:

```diff
- Engine.emit
+ router.emit
```

Also, kinds of MultiOutput plugin such as config-expander must be modified like:

```diff
        output = Plugin.new_output(type)
+       output.router = router
        output.configure(e)
```

This patch makes the above modification works in both v0.12 and v0.10 branch.