Use pubsub to decouple parents from children

- Use a pubsub system to subscribe and publish update event from children to root.
- No longer use path class, each wrapper instead stores the whole path array
Merge pull request #10 from mquan/use-pub-sub

Use pubsub to decouple parents from children