[#38] Refactor EventEmitter to be instantiated by middleware.
[#38] Refactor serve into lib/serve.js