modify: move advice as a Carpet component

- Advice is a component now
- Test spec is for components is separated from the core framework
- Even smaller in size now
remove: pubsub component - should be a separated library
new: dist files