Move registration of handlers[MODIFIED] to component/base/(on|off).

Introduce component runners for pipeline/sequence.

Add support for `sig/setup` and `sig/teardown`.

Remove `pubsub/hub.republish` and `component/gadget.republish`.

Refactor hub registration to use `sig/setup` and `sig/teardown`. *Note* that this fundamentally changes how publish on the hub works. Previously all handlers would be registred on the hub itself, now a proxy handler is registred per topic that re-emits on the owning component.
me[HANDLERS] can now be iterrated as object or array.

Externalize code that creates initial list of handlers to `event/emitter.createHandlers` static.

`off` all handlers in `component/gadget.sig/finalize` in reverse order.
Rename handler proxy from `handler`->`proxy`.
Remove comments regarding `reemit` from hub.

Formatting.
Fix some jsdoc things.

Fixed broken sequence runner.
Minor fixes.
Code simplification, removed modified timestamp of handlers.
Revised JSDoc on emitter.createHandlers.
Bypassed setup/teardown for signals.
Added tests for setup/teardown signals.
Added tests for gadget.off.
Adapted to use the new decorator for on/off interception.
Remove unused variable.
Renamed `off_widget` -> `off`
`@method` for jsduck
Merge pull request #142 from troopjs/feature/auto-cleanup

Refactor hub registration to support auto cleanup.