Use router instead of Engine.emit

Bundled plugins are implementation example so it should use proper style.
Merge pull request #511 from fluent/use-router

Use router instead of Engine.emit